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

Consider proactively aborting sharded transactions when any participant aborts

    XMLWordPrintable

    Details

    • Type: Task
    • Status: Closed
    • Priority: Major - P3
    • Resolution: Gone away
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: Sharding
    • Labels:

      Description

      Currently, transactions on TransactionParticipants across shards have independent expiration times based on when the transaction was started on the shard. This could mean that the transaction may expire and abort on one shard while we continue to do work on other shards for an extended period of time, not aborting until prepare is sent by the coordinator, when we should be able to abort the transaction by either:

      • Sending voteAbort immediately from the participant to the coordinator on timeout, or
      • Constructing a deadline on mongos when the transaction begins, and send it to each shard for the first operation on that shard in the transaction

        Attachments

          Activity

            People

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

              Dates

              • Created:
                Updated:
                Resolved: