[SERVER-53916] Create commitReshardCollection command Created: 20/Jan/21  Updated: 29/Oct/23  Resolved: 07/Apr/21

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

Type: New Feature Priority: Major - P3
Reporter: Lamont Nelson Assignee: Billy Donahue
Resolution: Fixed Votes: 0
Labels: PM-234-M3, PM-234-T-autocommits
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on SERVER-53918 Enforce minimumReshardingDuration Closed
is depended on by SERVER-53921 Engage critical section once all reci... Closed
is depended on by SERVER-56660 Remove need for reshardingCoordinator... Closed
Problem/Incident
Related
related to SERVER-55884 Complete TODO listed in SERVER-53916 Closed
Backwards Compatibility: Fully Compatible
Sprint: Sharding 2021-03-08, Sharding 2021-03-22, Sharding 2021-04-05, Sharding 2021-04-19
Participants:
Linked BF Score: 0
Story Points: 2

 Description   

Should return error if the specified resharding operation does not exist or has completed already.
Should enter the critical section of the resharding operation if not already reached.
Should durably record decision to commit the resharding operation if not already done.

The commit flow is already implemented for resharding. This ticket is about introducing a new promise/future pair that the ReshardingCoordianator waits on and is fulfilled by the commitReshardCollection command.

We should consider adding a server parameter to preserve the existing "reshardin commits as quickly as possible" style of behavior to avoid impacting existing tests.



 Comments   
Comment by Githook User [ 07/Apr/21 ]

Author:

{'name': 'Billy Donahue', 'email': 'billy.donahue@mongodb.com', 'username': 'BillyDonahue'}

Message: SERVER-53916 commitReshardCollection command

call commitReshardCollection even if expecting error
use isReady(), not bool
use NoSuchReshardCollection
simple commitReshardCollection jstest
give _fulfillmentMutex a more precise purpose
capture executor
introduce commitReshardCollection commands to jstests/core/views/views_all_commands.js
exempt _configsvrCommitReshardCollection from all_commands tests
add commitReshardCollection to last_lts_mongos_commands
revert resharding_fails_on_nonempty_stash.js
reshardingForceCoordinatorCanEnterCritical fail point
reshardingForceCoordinatorCanEnterCritical in resharding_disallow_drop.js
reshardingForceCoordinatorCanEnterCritical opt-out in resharding_commit.js
golf
upgrade to more abort cribbing
cleanup
clang-format
Branch: master
https://github.com/mongodb/mongo/commit/27ee303a744b45ce205e8f1002e9d6b3783248dc

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