-
Type:
Story
-
Resolution: Fixed
-
Priority:
Major - P3
-
Affects Version/s: None
-
Component/s: Transactions
-
None
-
Storage Engines, Storage Engines - Transactions
-
SE Transactions - 2026-01-30
-
5
In disagg, ingest tables don't use tombstones, but use a special wt_tombstone value instead.
This causes a problem because during step up, we perform prepare discover process and can claim a prepared tombstone value, causes a tombstone to be accidentally committed on the ingest table.
This can cause issue when look up:
- when going down the update chain and encountering a tombstone on the ingest cursor, ingest cursor will return a WT_NOTFOUND error, meaning the key is no longer visible.
- However WT_NOTFOUND is also returned when ingest table cannot find any update at all, which we would then start searching for stable table -> it can return a deleted value. Therefore we cannot use a tombstone type on ingest table.
This PR fixes the issue by replacing the tombstone to an update with special tombstone value instead of a real tombstone update structure when finding pending prepared items.