[SERVER-49180] Make the donor's dataSync function reserve an OpTime at which to do the "start blocking" write Created: 29/Jun/20  Updated: 29/Oct/23  Resolved: 08/Jul/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: Esha Maharishi (Inactive) Assignee: Cheahuychou Mao
Resolution: Fixed Votes: 0
Labels: pm-1791_milestone-A
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Duplicate
is duplicated by SERVER-49186 Make donor's "data sync" function do ... Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2020-07-13
Participants:

 Description   

Having the blockTimestamp available in the state machine doc simplifies startup recovery, since it allows a node to simply scan all its donor state machine docs on startup to find out which databases it should block for and as of what timestamp.

To actually put the blockTimestamp into the state machine doc when updating the state machine to "blocking", the donor must know the blockTimestamp ahead of time.

To do this, the donor can reserve an OpTime for the write ahead of time using the OplogSlotReserver.

This will probably require moving the OplogSlotReserver out of TransactionParticipant into its own file.

The code review should have sign-off from judah.schvimer.



 Comments   
Comment by Githook User [ 08/Jul/20 ]

Author:

{'name': 'Cheahuychou Mao', 'email': 'cheahuychou.mao@mongodb.com', 'username': 'cheahuychou'}

Message: SERVER-49180 Make the donor's dataSync function reserve an OpTime at which to do the "start blocking" write
Branch: master
https://github.com/mongodb/mongo/commit/9f7dbe76058e0300d182f8f548f37dbf5d4ea16b

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