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

Defragmentation error handling should wait for all outstanding actions to finish

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 5.3.0
    • None
    • None
    • None
    • Fully Compatible
    • Sharding EMEA 2022-01-24

    Description

      Currently, when a non-retriable error occurs during collection defragmentation, the defragmentation state for that collection is destroyed and removed from the map of defragmentation states.
      However, if the error is not a drop collection or database, the defragmentation state will be recreated during the next balancer round so that defragmentation can be retried. We are not currently waiting for all outstanding requests for the collection to be finished before removing the state, which could result in requests from the previous instance of defragmentation to be acknowledged by the current defragmentation state.

      We should modify the error handling so that the state is only removed after all outstanding actions have been acknowledged.

      Attachments

        Activity

          People

            allison.easton@mongodb.com Allison Easton
            allison.easton@mongodb.com Allison Easton
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: