[SERVER-42755] recover_prepared_txn_with_multikey_write.js should make sure no prepare conflicts are generated on catalog object after restarting node Created: 09/Aug/19  Updated: 29/Oct/23  Resolved: 13/Aug/19

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.2.1, 4.3.1

Type: Improvement Priority: Major - P3
Reporter: William Schultz (Inactive) Assignee: William Schultz (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Related
related to SERVER-42750 OperationContext::inMultiDocumentTran... Closed
Backwards Compatibility: Fully Compatible
Backport Requested:
v4.2
Participants:
Linked BF Score: 43

 Description   

The recover_prepared_txn_with_multikey_write.js test reconstructs a prepared transaction that did a multikey write. After reconstructing this transaction, we should assert that no prepare conflicts are generated on the catalog, to make sure that the transaction was reconstructed correctly and the multikey write was done in a side transaction. This may have helped catch the issue referenced in SERVER-42750. We should also make sure it waits for the restarted node to become primary again, so that data consistency checks are not skipped inside stopSet. Furthermore, it should abort the prepared transaction before shutting down the set.



 Comments   
Comment by Githook User [ 24/Sep/19 ]

Author:

{'name': 'Samyukta Lanka', 'username': 'lankas', 'email': 'samy.lanka@mongodb.com'}

Message: SERVER-40466 Unify checks for being in a multi-document transaction

(cherry picked from commit 77967c90b1a521108c052af235ce7de9742aa95e)

SERVER-42755 recover_prepared_txn_with_multikey_write.js should verify absence of prepare conflicts on catalog after restart.

(cherry picked from commit eaf81228328738b685532c7eb10f833362434061)

SERVER-42750 Set opCtx->inMultiDocumentTransaction() in transaction recovery.

(cherry picked from commit 16c17677704a4f979381d593106a0c356088fd30)
Branch: v4.2
https://github.com/mongodb/mongo/commit/1781933c126d2aff697cdb42a8f84b8212db23ad

Comment by Githook User [ 13/Aug/19 ]

Author:

{'name': 'William Schultz', 'username': 'will62794', 'email': 'william.schultz@mongodb.com'}

Message: SERVER-42755 Fix eslint
Branch: master
https://github.com/mongodb/mongo/commit/d8ea200cc8000f702376ebc53f3efc066b709cd4

Comment by Githook User [ 13/Aug/19 ]

Author:

{'name': 'William Schultz', 'username': 'will62794', 'email': 'william.schultz@mongodb.com'}

Message: SERVER-42755 recover_prepared_txn_with_multikey_write.js should verify absence of prepare conflicts on catalog after restart. Also, disable the test for now until multikey writes inside transactions work properly during recovery.
Branch: master
https://github.com/mongodb/mongo/commit/eaf81228328738b685532c7eb10f833362434061

Comment by William Schultz (Inactive) [ 09/Aug/19 ]

Code review url: https://mongodbcr.appspot.com/496750005/

Generated at Thu Feb 08 05:01:20 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.