[SERVER-78484] Preserve snapshot history in transactions_target_at_point_in_time.js on v4.4 Created: 27/Jun/23  Updated: 29/Oct/23  Resolved: 28/Jun/23

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

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

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Sharding NYC 2023-07-10
Participants:
Linked BF Score: 5

 Description   

In `transactions_target_at_point_in_time.js`, we run transactions with `snapshot` read concern. On slow machines, if the transaction takes a long time, we can see the transaction read operation fail with `SnapshotTooOld`, because the default snapshot history window is only 5s.

In 4.4, we don't have the ability to set the minimum snapshot history window via server parameter. Instead, we can use the failpoint `WTPreserveSnapshotHistoryIndefinitely` to preserve the history for the duration of the test, so that even slow transactions complete.

We've implemented a similar solution for other 4.4 tests that fail due to insufficient snapshot history (like SERVER-42025). This fix should also only go in v4.4, as we've fixed the issue on v5.0 and above with the usage of a server parameter.



 Comments   
Comment by Githook User [ 28/Jun/23 ]

Author:

{'name': 'Ali Mir', 'email': 'ali.mir@mongodb.com', 'username': 'ali-mir'}

Message: SERVER-78484 Preserve snapshot history in transactions_target_at_point_in_time.js
Branch: v4.4
https://github.com/mongodb/mongo/commit/b6f816f31c0bb4cf8845b0858346bc3d0290dc4e

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