-
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
-
v3.2
-
Repl 17 (07/15/16)
During initial sync, there is a race between when we get the first op to apply and when we call list collections and create them all. Consider the following operation order:
1. Primary creates collection, foo
2. Primary inserts
into foo
3. Secondary gets first op to apply as insert
4. Primary drops foo
5. Secondary lists collections, doesn't see foo, and doesn't create foo
6. Secondary applies insert
and gets NamespaceNotFound error.
During initial sync, we should just ignore NamespaceNotFound errors since that means that a drop collection has occurred later on in the oplog.
- is depended on by
-
SERVER-27834 Index builds during initial sync should not implicitly create collections
- Closed
-
SERVER-24538 Make small_oplog_rs_initsync_static passthrough test to periodically run initial sync with data to sync
- Closed