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

Allow mongos to retry on stale version and snapshot errors within a transaction

    XMLWordPrintable

    Details

    • Sprint:
      Sharding 2019-03-25
    • Linked BF Score:
      15

      Description

      Because of the problem described in SERVER-39624, mongos's ability to retry transaction statements that fail on stale version and snapshot errors without aborting the overall sharded transaction was disabled in favor of returning a TransientTransactionError label, so the client retries the entire transaction with a higher transaction number.

      This behavior could be problematic for long running transactions in particular because a stale version error on a late statement would force the entire transaction to be retried, instead of just the failed statement. The purpose of this ticket is to come up with a safe way to allow mongos to retry on these errors within a transaction that addresses the problem from SERVER-39624.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated: