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

Removing a shard with in-progress migration coordinators can leave permanently pending config.rangeDeletions document on recipient

    XMLWordPrintable

    Details

    • Operating System:
      ALL
    • Backport Requested:
      v4.4, v4.2
    • Sprint:
      Sharding 2020-11-02
    • Linked BF Score:
      16

      Description

      The following scenario can occur:

      1. Migration of a chunk from shard X to shard Y completes with commit/abort and the migration coordinator on shard X persists the decision
      2. Shard X is removed and shut down before the migration coordinator updates config.rangeDeletions on shard Y
      3. Shard Y is left with document in config.rangeDeletions corresponding to that migration with a 'pending: true' flag

      The presence of this document will permanently prevent any migrations to shard Y for chunks overlapping this chunk.

      In the case where the migration aborted after migrating some documents to shard Y, this will also leave documents in this chunk orphaned on shard Y.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              andrew.shuvalov Andrew Shuvalov
              Reporter:
              matthew.saltz Matthew Saltz
              Participants:
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Dates

                Created:
                Updated: