[SERVER-2119] In a chunk migration, TO-side shard can't commit before pushing chunk writes to secondary Created: 18/Nov/10 Updated: 12/Jul/16 Resolved: 17/Dec/10 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Sharding |
| Affects Version/s: | None |
| Fix Version/s: | 1.7.4 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Alberto Lerner | Assignee: | Alberto Lerner |
| Resolution: | Done | Votes: | 1 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Operating System: | ALL |
| Participants: |
| Description |
|
db/repl_block.h opReplicatedEnough has to be called in _recvChunkCommit Here's a race: > 0) TO-Primary receives last mods for a transfered chunk |
| Comments |
| Comment by auto [ 15/Dec/10 ] |
|
Author: {u'login': u'alerner', u'name': u'Alberto Lerner', u'email': u'alerner@10gen.com'}Message: |
| Comment by auto [ 15/Dec/10 ] |
|
Author: {u'login': u'alerner', u'name': u'Alberto Lerner', u'email': u'alerner@10gen.com'}Message: |
| Comment by Hampus Wessman [ 01/Dec/10 ] |
|
Just want to add that if the TO-side shard is a replica set, then it probably should wait for it to replicate to a majority of the members in that replica set (ie possibly more than one other server). It's not good if data that has once been safely written to a majority of servers in a replica set suddenly ends up on only a minority (in another shard) and thus risks getting lost on a failover! |
| Comment by auto [ 18/Nov/10 ] |
|
Author: {'login': 'alerner', 'name': 'Alberto Lerner', 'email': 'alerner@10gen.com'}Message: |