ReshardingDonorRecipientCommonTest can hang in shutdownExecutorPool()

XMLWordPrintableJSON

    • Type: Bug
    • Resolution: Fixed
    • Priority: Major - P3
    • 9.0.0-rc0
    • Affects Version/s: None
    • Component/s: None
    • None
    • Cluster Scalability
    • Fully Compatible
    • ALL
    • 200
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      ReshardingDonorRecipientCommonTest::tearDown() drains the shared executor pool before shutting down the resharding PrimaryOnlyService registry. Tests that create a donor or recipient state machine (and then return without explicitly stopping it like ProcessDonorFieldsNotPerformVerification) leave that state machine running asynchronously on its own service thread. Because the registry was never told to step down or shut down first, the state machine keeps retrying network operations against the mock network. The subsequent executor-pool drain then tries to take exclusive control of the mock network, but the still-active state machine never releases it, so the drain blocks indefinitely on a condition variable.

            Assignee:
            Abdul Qadeer
            Reporter:
            Abdul Qadeer
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: