[SERVER-53568] Require conflict stash collections to be empty for recipients to allow resharding operation to succeed Created: 04/Jan/21  Updated: 29/Oct/23  Resolved: 26/Feb/21

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

Type: Task Priority: Major - P3
Reporter: Max Hirschhorn Assignee: Daniel Gottlieb (Inactive)
Resolution: Fixed Votes: 0
Labels: PM-234-M2.5, PM-234-T-oplog-apply
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Sprint: Sharding 2021-02-22, Sharding 2021-03-08
Participants:
Story Points: 1

 Description   

The role of the conflict stash collections in resharding's oplog application is to handle any transient duplicate _id values. Transient duplicate _id values arise from the lack of a strict ordering across shards for multi-document transaction oplog entries. Any documents remaining in the conflict stash collections after the recipient has applied through all donors' oplog entries represent non-transient (permanent) duplicate _id values and are therefore violations of the global _id uniqueness assumption in sharding.



 Comments   
Comment by Githook User [ 26/Feb/21 ]

Author:

{'name': 'Daniel Gottlieb', 'email': 'daniel.gottlieb@mongodb.com', 'username': 'dgottlieb'}

Message: SERVER-53568: Propagate an error when resharding completes with a non-empty stash collection.
Branch: master
https://github.com/mongodb/mongo/commit/b769da11bca2c4e89d83efd6cd7bb4dbe4560245

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