Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-18857

concurrent index create requested per database or per table

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed
    • Major - P3
    • Resolution: Gone away
    • None
    • None
    • Index Maintenance

    Description

      Docs state that foreground index build locks the database. This makes sense for mmapv1. It shouldn't be required for WiredTiger & RocksDB. I hope we can support concurrent foreground index build in a database or even on one collection.

      One use case is database reload where a common practice is to load the table with only a PK index, then with one scan of the table do (possibly external) sorts for each of the secondary indexes, then finish each sort and write the secondary index with minimal fragmentation.

      Database reload where the secondary index has already been declared can bog down in the read-modify-write IO required for btrees, like WiredTiger.

      http://docs.mongodb.org/manual/reference/method/db.collection.createIndex/#db.collection.createIndex
      http://docs.mongodb.org/manual/faq/concurrency/
      http://docs.mongodb.org/manual/tutorial/build-indexes-in-the-background/
      http://docs.mongodb.org/manual/core/index-creation/

      Attachments

        Issue Links

          Activity

            People

              louis.williams@mongodb.com Louis Williams
              mdcallag Mark Callaghan
              Votes:
              2 Vote for this issue
              Watchers:
              17 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: