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

Tasks which run on the `MigrationUtilExecutor` are using `waitForShutdown()`

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major - P3
    • Resolution: Unresolved
    • Affects Version/s: 5.0.3, 4.4.9, 5.1.0-rc0
    • Fix Version/s: Backlog
    • Component/s: None
    • Operating System:
      ALL
    • Sprint:
      Sharding EMEA 2021-11-01, Sharding EMEA 2021-12-27, Sharding EMEA 2022-01-10, Sharding EMEA 2022-01-24, Sharding EMEA 2022-02-07
    • Linked BF Score:
      33

      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

            Assignee:
            sergi.mateo-bellido Sergi Mateo Bellido
            Reporter:
            kaloian.manassiev Kaloian Manassiev
            Participants:
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Dates

              Created:
              Updated: