Applications (including MongoDB) currently have to deal with a race, where they calculate a valid timestamp for a call to WT_SESSION::begin_transaction, but by the time WiredTiger goes to use the timestamp, another thread has updated oldest_timestamp to a more recent value.
It would simplify application code if there were a flag to WT_SESSION::begin_transaction that caused the transaction to use the newer oldest_timestamp in this case rather than failing.
Something like session->begin_transaction(session, "read_timestamp=100,round_to_oldest=true");
- is related to
-
WT-3574 timestamp abort does not need to increment with atomic op
- Closed
-
SERVER-31683 Use new WT API for read concern majority
- Closed