-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Fully Compatible
Reads should call checkIfCanReadOrBlock after waiting for readConcern, in particular after waiting for their clusterTime to be reached (and therefore waiting for all oplog holes earlier than that clusterTime to be filled).
checkIfCanReadOrBlock should not be called under any locks, particularly under database or collection locks.
It would be nice if this can be added to the service entry point, but a fallback is to add it to every read command (i.e., every command that can take a readConcern).
This ticket should also test that all reads with clusterTime > the blockTimestamp block if the "start blocking" write has occurred.
- is duplicated by
-
SERVER-49186 Make donor's "data sync" function do the "start blocking" write
- Closed