[SERVER-51845] StorageInterfaceImpl::createIndexesOnEmptyCollection() should acquire stronger collection lock (X) mode while creating indexes on empty committed collection. Created: 27/Oct/20  Updated: 29/Oct/23  Resolved: 30/Oct/20

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.9.0

Type: Bug Priority: Major - P3
Reporter: Suganthi Mani Assignee: Suganthi Mani
Resolution: Fixed Votes: 0
Labels: pm-1791_milestone-B
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Backwards Compatibility: Fully Compatible
Operating System: ALL
Sprint: Repl 2020-11-02
Participants:

 Comments   
Comment by Suganthi Mani [ 30/Oct/20 ]

daniel.gottlieb you are right, that's the invariant that was firing.

Comment by Daniel Gottlieb (Inactive) [ 30/Oct/20 ]

suganthi.mani how did you discover this problem? I'm hoping you observed the UncommittedCollections::hasExclusiveAccess invariant firing.

Comment by Githook User [ 29/Oct/20 ]

Author:

{'name': 'Suganthi Mani', 'email': 'suganthi.mani@mongodb.com', 'username': 'smani87'}

Message: SERVER-51747 SERVER-51813 Tenant collection cloner calls write_ops_exec::performInserts() to insert documents for 2 reasons. 1) To comply with "multi-timestamp" rules. 2) To have limit on the size of the batch that gets inserted in a single WUOW.

SERVER-51845 StorageInterfaceImpl::createIndexesOnEmptyCollection() acquires stronger collection lock (X) mode while creating indexes on empty committed collection.

SERVER-51869 StorageInterfaceImpl::createIndexesOnEmptyCollection() generates oplog entry on creating indexes.

SERVER-51844 Added sanity check in tenant collection cloner to catch case like, tenant collection not having _id index and autoIdIndex is true.
Branch: master
https://github.com/mongodb/mongo/commit/f48a671a94df43683f53557a62450df21b30034e

Generated at Thu Feb 08 05:26:36 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.