[SERVER-23425] Inserts and updates during chunk migration get deleted in 3.0.9, 3.0.10 Created: 30/Mar/16 Updated: 04/Apr/16 Resolved: 31/Mar/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | 3.0.9, 3.0.10 |
| Fix Version/s: | 3.0.11 |
| Type: | Bug | Priority: | Critical - P2 |
| Reporter: | David Andrade | Assignee: | Andy Schwerin |
| Resolution: | Done | Votes: | 0 |
| Labels: | RF | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||
| Operating System: | ALL | ||||||||||||
| Participants: | |||||||||||||
| Description |
|
Issue Status as of Mar 31, 2016 ISSUE SUMMARY USER IMPACT
Standalone nodes, replica set deployments, and sharded clusters with no chunk migrations are not impacted by this issue. No other version of MongoDB is affected. During a chunk migration, insert and update operations affecting documents in the migrating chunk are not reflected in the recipient shard, leading to data loss. Users who haven’t disabled the moveParanoia option should be able to recover this data manually. WORKAROUNDS Alternatively, users should disable the balancer and ensure no manual chunk migrations occur in order to avoid this issue. The balancer can be disabled cluster-wide or on a per-collection basis. See the Documentation section below for more information. AFFECTED VERSIONS FIX VERSION DOCUMENTATION Original descriptionSimilar to The script below inserts 20000 documents into a collection. Then manually moves a chunk while inserting another 20000 documents. The end asserts that there should be 40000 documents in the collection, but in my testing there are 20-30 documents missing.
I've reproduced this both in mongo 3.0.9 and 3.0.10. UpdateMongoDB 3.2 is not affected by this bug |
| Comments |
| Comment by Githook User [ 01/Apr/16 ] |
|
Author: {u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}Message: |
| Comment by Githook User [ 31/Mar/16 ] |
|
Author: {u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}Message: |
| Comment by Githook User [ 31/Mar/16 ] |
|
Author: {u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}Message: |
| Comment by Andy Schwerin [ 31/Mar/16 ] |
|
This bug affects 3.0.9 and 3.0.10 only. |
| Comment by David Andrade [ 31/Mar/16 ] |
|
Can you confirm what version of 3.0 this bug was introduced in? |
| Comment by Ramon Fernandez Marina [ 30/Mar/16 ] |
|
dandrade@agoragames.com, this is to let you know we've identified the source of the issue and are working on a fix. Please note that MongoDB 3.2 is not affected by this bug, so if this issue is critical for you you may want to consider upgrading to 3.2 (3.2.4 is the latest stable release at the time of this writing). Thanks, |
| Comment by David Andrade [ 30/Mar/16 ] |
|
I was able to reproduce it even if i commented out that line. |
| Comment by Andy Schwerin [ 30/Mar/16 ] |
|
How important is it to adjust the yield iterations server parameter in order to make this reproduce? |
| Comment by Ramon Fernandez Marina [ 30/Mar/16 ] |
|
Thanks for the detailed reproducer dandrade@agoragames.com, we're investigating. |