-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: 3.0.12, 3.2.7, 3.3.9
-
Component/s: Replication
-
None
-
Fully Compatible
-
ALL
-
Repl 17 (07/15/16)
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
2. Primary creates a compound index on two fields a and b
3. Primary drops the collection
4. Primary inserts document
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.
6. Secondary starts to apply its oplog
7. Secondary creates a compound index on fields a and b
8. Secondary gets a "cannot index parallel arrays" error.
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.
- is depended on by
-
SERVER-24538 Make small_oplog_rs_initsync_static passthrough test to periodically run initial sync with data to sync
- Closed