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

Implement recovery token for retrying a commit command on a different mongos

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 4.1.7
    • Component/s: None

      Description

      • the router returns the recovery token on the response to the first statement
      • the client can send the recovery token on any later statements, including 'commitTransaction' and 'abortTransaction', but the router will only make use of the recovery token in commitTransaction, and only if the router does not know about the transaction
      • to make use of the recovery token, the router sends 'recoverTransaction' to the shard identified by the token
      • a shard that receives 'recoverTransaction' returns NoSuchTransaction if the shard does not know about the transaction. otherwise, if the decision has been made, returns the decision; if the decision has not been made, decides to abort.

        Attachments

          Issue Links

            Activity

              People

              • Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: