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

The range deleter should retry on write conflict exceptions

    XMLWordPrintable

    Details

    • Backwards Compatibility:
      Fully Compatible
    • Operating System:
      ALL
    • Backport Requested:
      v4.2
    • Sprint:
      Sharding 2019-02-25, Sharding 2019-06-03, Sharding 2019-06-17

      Description

      The range deleter deletes orphan documents by constructing a PlanExecutor with a YIELD_MANUAL yield policy. Because of this, any write conflict errors encountered will be re-thrown, but there is no WriteConflictRetry loop in CollectionRangeDeleter::cleanUpNextRange, causing post-migration orphan cleanup and cleanupOrphaned commands to fail unnecessarily.

      The net effect of this is that more orphans remain on the system.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: