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

ChunkSplitter should use the same chunk bounds for splitVector and splitChunk

    XMLWordPrintableJSON

Details

    • Fully Compatible
    • ALL
    • v4.4, v4.2
    • Sharding 2020-07-13, Sharding 2020-07-27, Sharding 2020-08-10
    • 5

    Description

      The ChunkSplitter takes in min/max values for the chunk range as input parameters, but then looks the chunk up again in the routing info based on the min key. The min/max for that chunk are used in the call to splitVector, but the call to splitChunk uses the input parameters.

      The problem is that in between the time the chunk was submitted for splitting and the time that we look up the chunk again in the routing table, the routing table could have changed and these values could be different, leading to weird outcomes.

      Attachments

        Activity

          People

            jack.mulrow@mongodb.com Jack Mulrow
            matthew.saltz@mongodb.com Matthew Saltz (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: