[SERVER-66104] Not label InternalTransactionNotSupported as a transient transaction error Created: 02/May/22  Updated: 29/Oct/23  Resolved: 03/May/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 6.0.0-rc4, 6.1.0-rc0

Type: Bug Priority: Major - P3
Reporter: Cheahuychou Mao Assignee: Cheahuychou Mao
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v6.0
Sprint: Sharding NYC 2022-05-16
Participants:

 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.



 Comments   
Comment by Githook User [ 02/May/22 ]

Author:

{'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}

Message: SERVER-66104 Make internal_transactions_transient_error_after_setFCV.js check for InternalTransactionNotSupported in writeErrors instead

InternalTransactionNotSupported is no longer a transient transation
error so it is returned as a write error instead of as a top-level
error
Branch: v6.0
https://github.com/mongodb/mongo/commit/91db229de65e6e1d2ea20c2f260eddb201091a27

Comment by Githook User [ 02/May/22 ]

Author:

{'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}

Message: SERVER-66104 Not label InternalTransactionNotSupported as a transient transaction error

(cherry picked from commit 3bef8610d3274be1e758b146008abdc103e7792c)
Branch: v6.0
https://github.com/mongodb/mongo/commit/b33af4ceafa190f021630d9136e0024e6048bc3f

Comment by Githook User [ 02/May/22 ]

Author:

{'name': 'Cheahuychou Mao', 'email': 'mao.cheahuychou@gmail.com', 'username': 'cheahuychou'}

Message: SERVER-66104 Not label InternalTransactionNotSupported as a transient transaction error
Branch: master
https://github.com/mongodb/mongo/commit/3bef8610d3274be1e758b146008abdc103e7792c

Generated at Thu Feb 08 06:04:30 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.