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
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.