Uploaded image for project: 'Core Server'
  1. Core Server
  2. SERVER-78484

Preserve snapshot history in transactions_target_at_point_in_time.js on v4.4

    • Type: Icon: Bug Bug
    • Resolution: Fixed
    • Priority: Icon: Major - P3 Major - P3
    • 4.4.23
    • Affects Version/s: None
    • Component/s: None
    • None
    • Fully Compatible
    • ALL
    • Sharding NYC 2023-07-10
    • 5

      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.

            ali.mir@mongodb.com Ali Mir
            ali.mir@mongodb.com Ali Mir
            0 Vote for this issue
            2 Start watching this issue