RangeDeleterService onStepUpComplete can race with onShutdown

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0, 8.3.2
    • Affects Version/s: None
    • Component/s: None
    • None
    • Cluster Scalability
    • Fully Compatible
    • ALL
    • v8.3
    • ClusterScalability 16Mar-30Mar
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      onStepUpBegin initializes some promises that are expected to be fulfilled by onStepUpComplete. However, if the node is shut down between the call to onStepUpBegin and onStepUpComplete, these promises will be reset, leading to a crash if onStepUpComplete tries to dereference the boost::optional to fulfill them.

      onStepUpComplete should ensure that the promises are set before fulfilling them and handle this gracefully. A similar problem was addressed during SERVER-115921.

      Because this race can only occur during node shutdown, the resulting server crash is not as severe as might otherwise be expected.

            Assignee:
            Brett Nawrocki
            Reporter:
            Brett Nawrocki
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: