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

Hashed indexes may be incorrectly marked multikey and be ineligible as a shard key

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.4, v4.2
    • Sprint:
      Execution Team 2020-09-07, Execution Team 2021-01-11
    • Case:

      Description

      If an index build on a hashed index is concurrent with any collection writes, the index may be incorrectly marked multikey. As a result, this index can not be used as the shard key on a sharded collection. 

       

      Original title: shardCollection fails with "couldn't find valid index for shard key" despite index existing

      Original description:

      I'm attempting to shard a number of existing collections. They were all created and populated in a standalone mongod which has now been converted to a sharded cluster. Some of the collections have sharded successfully, others have failed with the above error. A possible cause of this was that the indexes were in the process of being created (with the background: true option) when the shardCollection command was first run, due to the script used not waiting for the background creation to complete.

        Attachments

        1. mongod.log
          74 kB
        2. mongos.log
          360 kB
        3. mongod.log - config server
          4 kB
        4. mongos.log.gz
          77.44 MB

          Issue Links

            Activity

              People

              Assignee:
              louis.williams Louis Williams
              Reporter:
              gavin.aiken@netcuras.com Gavin AIken
              Participants:
              Votes:
              5 Vote for this issue
              Watchers:
              29 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: