[SERVER-38620] prepareTransaction call doesn't set _prepareOpTime if transaction was recovered Created: 13/Dec/18  Updated: 29/Oct/23  Resolved: 30/Jan/19

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.1.8

Type: Bug Priority: Major - P3
Reporter: Samyukta Lanka Assignee: Jason Chan
Resolution: Fixed Votes: 0
Labels: prepare_durability
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Related
related to SERVER-38866 Ensure that secondaries correctly pin... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Repl 2019-02-11
Participants:

 Description   

When calling prepareTransaction, _prepareOpTime isn't set when recovering a prepared transaction. As a result, we can falsely return true when checking that the commitTimestamp is strictly greater than the prepareTimestamp (which would be set to the default (0, 0)). This would be a problem for failover test suites.



 Comments   
Comment by Githook User [ 30/Jan/19 ]

Author:

{'email': 'jason.chan@10gen.com', 'name': 'Jason Chan'}

Message: SERVER-38620 Set _prepareOpTime in prepareTransaction if transaction is in recovery
Branch: master
https://github.com/mongodb/mongo/commit/02a532609f5e4b5c7cde64a4f0444cb5dc0dcb3e

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