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

Tasks which run on the MigrationUtilExecutor must not wait for shutdown to complete

    XMLWordPrintable

Details

    • Fully Compatible
    • ALL
    • v5.3, v5.0
    • Sharding EMEA 2021-11-01, Sharding EMEA 2021-12-27, Sharding EMEA 2022-01-10, Sharding EMEA 2022-01-24, Sharding EMEA 2022-03-21, Sharding EMEA 2022-05-02
    • 33
    • 3

    Description

      All the blocking range deletion recovery work happens on the MigrationUtilExecutor and eventually calls into retryIdempotentWorkAsPrimaryUntilSuccessOrStepdown, which is a strictly blocking call that relies on globalInShutdownDeprecated/waitForShutdown.

      Given that we join the MigrationUtilExecutor on shutdown, this can result in a deadlock where the shutdown thread is waiting for the executor to complete and the executor is waiting on shutdown to complete.

      Attachments

        Activity

          People

            tommaso.tocci@mongodb.com Tommaso Tocci
            kaloian.manassiev@mongodb.com Kaloian Manassiev
            Votes:
            0 Vote for this issue
            Watchers:
            10 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: