[SERVER-63651] PrepareConflictTracker shouldn't assume TickSource is monotonically increasing Created: 15/Feb/22  Updated: 29/Oct/23  Resolved: 15/Feb/22

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 5.3.0-rc0

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

Issue Links:
Depends
Duplicate
Related
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Execution Team 2022-02-21
Participants:
Linked BF Score: 160

 Description   

In PrepareConflictTracker we assume TickSource is monotonically increasing and invariant when the clock goes back in time: https://github.com/mongodb/mongo/blob/c7bfbfeefcce9c73997e61d19c5efd7d57cf8971/src/mongo/db/prepare_conflict_tracker.cpp#L52-L62

In some platforms (MacOS) the clock is not monotonically increasing, we shouldn't rely on that.



 Comments   
Comment by Githook User [ 15/Feb/22 ]

Author:

{'name': 'Daniel Gómez Ferro', 'email': 'daniel.gomezferro@mongodb.com', 'username': 'dgomezferro'}

Message: SERVER-63651 Support non-monotonic clocks in PrepareConflictTracker
Branch: master
https://github.com/mongodb/mongo/commit/a5705b89f02a4cc1c3b1ce0eebc11e53fe668c5b

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