diff options
author | Xiangyu Yao <xiangyu.yao@mongodb.com> | 2019-04-17 16:47:36 -0400 |
---|---|---|
committer | Xiangyu Yao <xiangyu.yao@mongodb.com> | 2019-04-25 14:24:32 -0400 |
commit | fdc3712e4cb89c23451061b4c927a78340269d89 (patch) | |
tree | 151f8e9cfdad4a83dc30542c11c8f94b612c9fed /src/mongo/db/repair_database.cpp | |
parent | e4b0acb5770c5664db031d0c51389932fc2c4d56 (diff) | |
download | mongo-fdc3712e4cb89c23451061b4c927a78340269d89.tar.gz |
SERVER-39520 Use database IX lock for dropCollection
Diffstat (limited to 'src/mongo/db/repair_database.cpp')
-rw-r--r-- | src/mongo/db/repair_database.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mongo/db/repair_database.cpp b/src/mongo/db/repair_database.cpp index 4d690411b1b..635d9e7a2bb 100644 --- a/src/mongo/db/repair_database.cpp +++ b/src/mongo/db/repair_database.cpp @@ -142,7 +142,7 @@ Status repairCollections(OperationContext* opCtx, const std::string& dbName, stdx::function<void(const std::string& dbName)> onRecordStoreRepair) { - auto colls = UUIDCatalog::get(opCtx).getAllCollectionNamesFromDb(dbName); + auto colls = UUIDCatalog::get(opCtx).getAllCollectionNamesFromDb(opCtx, dbName); for (const auto& nss : colls) { opCtx->checkForInterrupt(); @@ -183,7 +183,7 @@ Status repairDatabase(OperationContext* opCtx, DisableDocumentValidation validationDisabler(opCtx); // We must hold some form of lock here - invariant(opCtx->lockState()->isLocked()); + invariant(opCtx->lockState()->isW()); invariant(dbName.find('.') == std::string::npos); log() << "repairDatabase " << dbName; |