-
Type: Task
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Storage Execution
The timestamp to read at when using the kLastApplied read source is maintained internally in the storage engine in the component called the snapshot manager. This timestamp doesn't really have anything to do with the storage engine and is rather a replication related construct about how we can safely read in the repl SECONDARY state concurrently with oplog batch application.
Logically, for the storage engine, this could be maintained outside and passed in similarly to how the kProvided read source works. This could make it easier to avoid bugs where a timestamp needs to be checked against some conditions before we open a storage snapshot with it.
Some special handling needs to occur as the query yield code needs to advance the timestamp for the kLastApplied read source, something that is not done for kProvided.
- related to
-
SERVER-66763 Reading on secondaries during repl stepup may cause server to fassert
- Closed