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

Resumable range deleter must use timestamps

    XMLWordPrintable

Details

    • Bug
    • Status: Closed
    • Major - P3
    • Resolution: Won't Fix
    • 4.9.0, 4.4.3
    • None
    • Sharding
    • None
    • ALL

    Description

      By default, each range deletion task is scheduled on the executor at time (timestampMoveChunkFinished + 15 mins). If a stepdown happens, at stepUp all pending range deletions are re-submitted at time (timeOfResubmit + 15 mins) because the only persisted info is if a range deletion is delayed but not when it should have originally happened.

      This behavior makes it very easy to end up into problematic contexts such as:

      • If a sufficient number of range deletions are rescheduled, the collection could be under pressure (because continuously IX-locked) and the secondaries get very lagged because there is no syncrhonous wait for majority deletion and there are no timeouts between batches from different ranges.
      • If periodic stepdowns are happening (e.g. a stepdown every 10 mins), range deletions will never be performed.

      Attachments

        Activity

          People

            backlog-server-sharding Backlog - Sharding Team
            pierlauro.sciarelli@mongodb.com Pierlauro Sciarelli
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: