-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Sharding
-
Fully Compatible
-
ALL
-
Sharding 2021-02-08
-
10
Due to risks of deadlock, TenantMigrationAccessBlocker::setCommitOpTime and setAbortOpTime both release the lock after setting _commitOpTime and _abortTime and reacquire the lock after getting committed snapshot opTime. Based on BF-19903, TenantMigrationAccessBlocker::onMajorityCommitPointUpdate by the ReplicationCoordinator thread so setCommitOpTime and setAbortOpTime could end up trying to set the completion promise after it has already been set. For more details, please see the comment in BF-19903.
- is duplicated by
-
SERVER-54088 Entering TenantMigrationAccessBlocker committed or aborted states should be idempotent
- Closed