[SERVER-47780] Test preventing snapshot reads from being serviced at an inconsistent point during initial sync Created: 27/Apr/20  Updated: 29/Oct/23  Resolved: 08/May/20

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.7.0

Type: Task Priority: Major - P3
Reporter: Lingzhi Deng Assignee: Lingzhi Deng
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Repl 2020-05-18
Participants:

 Description   

Test the following is not allowed but results in SnapshotTooOld error:
A new secondary starts initial syncing at time 7, so it fetches oplog entries starting at time 7. The primary keeps taking writes and commits an entry at time 10. Then a client starts a snapshot read at time 10 on the primary. The initial sync finishes at time 13. The commit point advances to time 15, so the initial syncing node has a currentCommittedSnapshot. The client sends an atClusterTime read at time 10 to the node that just left initial sync. The initial sync node services that read because it's less than the currentCommittedSnapshot, but that timestamp was mid-initial sync, so the data is inconsistent if read at that point in time.



 Comments   
Comment by Githook User [ 07/May/20 ]

Author:

{'name': 'Lingzhi Deng', 'email': 'lingzhi.deng@mongodb.com', 'username': 'ldennis'}

Message: SERVER-47780: Test preventing snapshot reads from being serviced at an inconsistent point during initial sync
Branch: master
https://github.com/mongodb/mongo/commit/c25f75a8ce9f5dec80ba0c5bd868a6e98a80beca

Generated at Thu Feb 08 05:15:12 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.