[SERVER-67973] Make timestamp behavior consistent across read sources in the recovery unit Created: 11/Jul/22  Updated: 05/Dec/22

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

Type: Task Priority: Major - P3
Reporter: Henrik Edin Assignee: Backlog - Storage Execution Team
Resolution: Unresolved Votes: 0
Labels: techdebt
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Assigned Teams:
Storage Execution
Participants:

 Description   

The different read sources establish its readAt timestamp in different ways in the RecoveryUnit.

kProvided and kLastApplied sets the timestamp when setTimestampReadSource is called.

kNoOverlap, kAllDurableSnapshot, kMajorityCommitted opens a snapshot if not already opened and sets the timestamp when calling getPointInTimeReadTimestamp.

The different behavior around when a timestamp is set and which calls will open a snapshot makes it difficult to use the API in a correct way that will work in a consistent way for the different read sources. We should try and unify the behavior.


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