Fix snapshot_gen staleness in __clayered_iterate causing assertion on WT_PREPARE_CONFLICT retry

XMLWordPrintableJSON

    • Storage Engines, Storage Engines - Transactions
    • 0.15
    • SE Transactions - 2026-06-05
    • 5

      snapshot_gen is not updated at the err: label of __clayered_iterate when WT_PREPARE_CONFLICT is returned. On the retry call, __clayered_adjust_state detects a spurious snapshot change (0 vs non-zero) and clears WT_CLAYERED_ITERATE_NEXT, causing an assertion in __clayered_iterate_constituents. Fix: on a fresh-start prepare conflict, reset cursors and clear flags so the next call restarts cleanly. Regression test in test/suite/test_layered_prepare03.py.

            Assignee:
            Chenhao Qu
            Reporter:
            Chenhao Qu
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: