[SERVER-62580] When migration commit fails, donor should not tell recipient to exit its critical section before running recovery Created: 13/Jan/22  Updated: 29/Oct/23  Resolved: 14/Jan/22

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 5.3.0

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

Backwards Compatibility: Fully Compatible
Sprint: Sharding EMEA 2022-01-24
Participants:

 Description   

If the migration commit to the configsvr fails after exhausting retries (e.g. donor did not receive an answer, but the commit message might be stuck somewhere in a router), the donor must not yet tell the recipient to exit its critical section. This is because it is still possible that the commit request arrives to the configsvr and succeeds.

Instead, if the commit command invocation does not succeed, we should just run migration recovery so that the recipient critical section will be released after ensureChunkVersionIsGreaterThan has been executed, which guarantees that the migration will no longer be able to commit.



 Comments   
Comment by Githook User [ 14/Jan/22 ]

Author:

{'name': 'Jordi Serra Torrens', 'email': 'jordi.serra-torrens@mongodb.com', 'username': 'jordist'}

Message: SERVER-62580 When migration commit fails, donor should not tell recipient to exit its critical section before running recovery
Branch: master
https://github.com/mongodb/mongo/commit/ae61a4d91c72b27479413e3a18ce169a8aebf42d

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