[SERVER-38856] txn_override.js should not rerun every operation in the ops buffer after collection creation Created: 04/Jan/19  Updated: 27/Oct/23  Resolved: 04/Apr/19

Status: Closed
Project: Core Server
Component/s: Replication, Sharding, Testing Infrastructure
Affects Version/s: None
Fix Version/s: None

Type: Bug Priority: Major - P3
Reporter: Samyukta Lanka Assignee: Judah Schvimer
Resolution: Gone away Votes: 0
Labels: prepare_testing
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Duplicate
duplicates SERVER-38937 Unify txn_override.js and auto_retry_... Closed
Related
related to SERVER-38936 Create unittests for txn_override.js Closed
Operating System: ALL
Sprint: Repl 2019-01-28, Repl 2019-02-11, Repl 2019-02-25, Repl 2019-03-11, Repl 2019-03-25, Repl 2019-04-08
Participants:
Linked BF Score: 7

 Description   

In txn_override.js, if an insert attempts to do implicit collection creation inside a transaction, we will abort the transaction, create the collection outside of a transaction, and rerun all operations in the transaction.

On a network error, we retry the entire transaction that was running by rerunning all buffered operations. If, while retrying a transaction, an implicit collection creation happens, then we will re-run all the operations after the operation that caused the implicit collection creation twice.

Instead of rerunning all operations after creating the collection, we should only rerun all operations that happened before (and including) the operation that caused the implicit collection creation.



 Comments   
Comment by Judah Schvimer [ 04/Apr/19 ]

This code went away with SERVER-38937.

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