[SERVER-24997] Ignore "cannot index parallel arrays" errors during initial sync because they are transient Created: 11/Jul/16 Updated: 19/Jul/16 Resolved: 12/Jul/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Replication |
| Affects Version/s: | 3.0.12, 3.2.7, 3.3.9 |
| Fix Version/s: | 3.3.10 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Judah Schvimer | Assignee: | Judah Schvimer |
| Resolution: | Done | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||
| Operating System: | ALL | ||||||||
| Sprint: | Repl 17 (07/15/16) | ||||||||
| Participants: | |||||||||
| Description |
|
During initial sync, there is a race between when we create our indexes and when we insert documents with multiple arrays. Consider the following order of events (possible in find_dedup.js): 1. Secondary starts fetching operations from primary for its oplog buffer 5. Secondary copies the collection, including document {a: [1,2,3], b: [4,5,6]}, but not including the compound index on fields a and b. Later on the secondary will drop this collection and reinsert {a: [1,2,3], b: [4,5,6]}and get to a consistent state if it is allowed to continue. |
| Comments |
| Comment by Githook User [ 12/Jul/16 ] |
|
Author: {u'username': u'judahschvimer', u'name': u'Judah Schvimer', u'email': u'judah@mongodb.com'}Message: |
| Comment by Githook User [ 12/Jul/16 ] |
|
Author: {u'username': u'judahschvimer', u'name': u'Judah Schvimer', u'email': u'judah@mongodb.com'}Message: |