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

Not label InternalTransactionNotSupported as a transient transaction error

    XMLWordPrintableJSON

Details

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major - P3 Major - P3
    • 6.0.0-rc4, 6.1.0-rc0
    • None
    • None
    • None
    • Fully Compatible
    • ALL
    • v6.0
    • Sharding NYC 2022-05-16

    Description

      SERVER-63498 made InternalTransactionNotSupported a retryable write error to allow a retryable WCOS update or findAndModify statement that fails to execute using an internal transaction during downgrade to be retried by drivers; the retry would use the legacy way of handling WCOS errors which doesn't require an internal transaction. Since every retryable write error is a transient transaction error, InternalTransactionNotSupported is now being returned with a TransactionTransactionError label, and that causes the transaction API to retry every internal transaction that runs during downgrade kTxnRetryLimit times before returning an error to the external client.

      Attachments

        Activity

          People

            cheahuychou.mao@mongodb.com Cheahuychou Mao
            cheahuychou.mao@mongodb.com Cheahuychou Mao
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: