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

When migration commit fails, donor should not tell recipient to exit its critical section before running recovery

    XMLWordPrintableJSON

Details

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 5.3.0
    • None
    • Sharding
    • None
    • Fully Compatible
    • Sharding EMEA 2022-01-24

    Description

      If the migration commit to the configsvr fails after exhausting retries (e.g. donor did not receive an answer, but the commit message might be stuck somewhere in a router), the donor must not yet tell the recipient to exit its critical section. This is because it is still possible that the commit request arrives to the configsvr and succeeds.

      Instead, if the commit command invocation does not succeed, we should just run migration recovery so that the recipient critical section will be released after ensureChunkVersionIsGreaterThan has been executed, which guarantees that the migration will no longer be able to commit.

      Attachments

        Activity

          People

            jordi.serra-torrens@mongodb.com Jordi Serra Torrens
            jordi.serra-torrens@mongodb.com Jordi Serra Torrens
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: