-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Replication, Storage
-
Fully Compatible
-
ALL
-
v4.0
-
Storage NYC 2018-06-18
-
61
Per daniel.gottlieb:
This seems to be a case of composing two separate write units of work into a big one. I believe the sequence for creating the first view on a database does:
1. Begin a transaction
2. Create the view (insert into _mdb_catalog, also creates an index on the view)
3. Set timestamp 1
4. Write creation into oplog with ts: 1
5. Insert new view into collection
6. Set timestamp 2
7. Write insert into oplog with ts: 2
8. Commit transaction
The collection is implicitly created here in the greater WUOW. CRUD op implicit collection creation happens here in its own WUOW.