[SERVER-56936] Ensure ReshardingCoordinator's _flushReshardingStateChanges for CoordinatorStateEnum::kPreparingToDonate isn't interrupted on abort Created: 13/May/21  Updated: 29/Oct/23  Resolved: 18/May/21

Status: Closed
Project: Core Server
Component/s: Sharding
Affects Version/s: None
Fix Version/s: 5.0.0-rc0, 5.1.0-rc0

Type: Bug Priority: Major - P3
Reporter: Haley Connelly Assignee: Haley Connelly
Resolution: Fixed Votes: 0
Labels: PM-234-M3, PM-234-T-error-flow, post-rc0
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
Depends
is depended on by SERVER-56288 Don't wait for participant machine cr... Closed
Related
related to SERVER-67457 Resharding operation aborted in the m... Closed
Backwards Compatibility: Fully Compatible
Operating System: ALL
Backport Requested:
v5.0
Sprint: Sharding 2021-05-31
Participants:
Linked BF Score: 149
Story Points: 1

 Description   

The ReshardingCoordinator's _cancelableOpCtxFactory should be tied to the stepdownToken instead of the abortToken when it flushes its transition to kPreparingToDonate to participants (and then swapped back to be tied to the abortToken immediately after).

Context:
Resharding donor and recipient machine creation depend on the ReshardingCoordinator's _flushReshardingStateChanges to succeed when the coordinator transitions to kPreparingToDonate. Right now, if an abort comes in while the flushes are in progress, the operation context tied to _cancelableOpCtxFactory will be interrupted upon the abortToken's cancelation.

Without participant machine creation, the coordinator can hang after transitioning to kError

 



 Comments   
Comment by Vivian Ge (Inactive) [ 06/Oct/21 ]

Updating the fixversion since branching activities occurred yesterday. This ticket will be in rc0 when it’s been triggered. For more active release information, please keep an eye on #server-release. Thank you!

Comment by Githook User [ 19/May/21 ]

Author:

{'name': 'Haley Connelly', 'email': 'haley.connelly@mongodb.com', 'username': 'haleyConnelly'}

Message: SERVER-56936 Ensure ReshardingCoordinator's _flushReshardingStateChanges
for CoordinatorStateEnum::kPreparingToDonate isn't interrupted on abort

SERVER-56288 Don't wait for participant machine creation in
resharding_abort_command.js

(cherry picked from commit 234c529c346dc06c6e7bfd0c669ea0c46ed72499)
Branch: v5.0
https://github.com/mongodb/mongo/commit/feadbcb49a28097ce89a68891dfbdcfae5bef0cc

Comment by Githook User [ 18/May/21 ]

Author:

{'name': 'Haley Connelly', 'email': 'haley.connelly@mongodb.com', 'username': 'haleyConnelly'}

Message: SERVER-56936 Ensure ReshardingCoordinator's _flushReshardingStateChanges
for CoordinatorStateEnum::kPreparingToDonate isn't interrupted on abort

SERVER-56288 Don't wait for participant machine creation in
resharding_abort_command.js
Branch: master
https://github.com/mongodb/mongo/commit/234c529c346dc06c6e7bfd0c669ea0c46ed72499

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