Defragmentation error handling should wait for all outstanding actions to finish

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Fixed
    • Priority: Major - P3
    • 5.3.0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • Sharding EMEA 2022-01-24
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      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.

            Assignee:
            Allison Easton
            Reporter:
            Allison Easton
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: