summaryrefslogtreecommitdiff
path: root/src/mongo/dbtests
diff options
context:
space:
mode:
authorEvgeni Dobranov <evgeni.dobranov@mongodb.com>2019-09-30 20:02:19 +0000
committerevergreen <evergreen@mongodb.com>2019-09-30 20:02:19 +0000
commit344e1b0f3ce5caf0d4760dddc8b2d196d4b73fe8 (patch)
tree14567c05e50661f6fb3b983a2b19a26abfe4a22c /src/mongo/dbtests
parent25b63d9ff12ebdfde549288ebaa7ff27c6945dd7 (diff)
downloadmongo-344e1b0f3ce5caf0d4760dddc8b2d196d4b73fe8.tar.gz
SERVER-41496 Remove Database::getCollection() and replace with CollectionCatalog::get().lookupCollectionByNamespace()
Diffstat (limited to 'src/mongo/dbtests')
-rw-r--r--src/mongo/dbtests/counttests.cpp2
-rw-r--r--src/mongo/dbtests/dbtests.cpp5
-rw-r--r--src/mongo/dbtests/dbtests.h2
-rw-r--r--src/mongo/dbtests/pdfiletests.cpp12
-rw-r--r--src/mongo/dbtests/plan_executor_invalidation_test.cpp14
-rw-r--r--src/mongo/dbtests/query_plan_executor.cpp5
-rw-r--r--src/mongo/dbtests/query_stage_count_scan.cpp3
-rw-r--r--src/mongo/dbtests/query_stage_fetch.cpp4
-rw-r--r--src/mongo/dbtests/query_stage_merge_sort.cpp20
-rw-r--r--src/mongo/dbtests/query_stage_sort.cpp12
-rw-r--r--src/mongo/dbtests/query_stage_update.cpp3
-rw-r--r--src/mongo/dbtests/querytests.cpp4
-rw-r--r--src/mongo/dbtests/repltests.cpp10
-rw-r--r--src/mongo/dbtests/rollbacktests.cpp32
14 files changed, 65 insertions, 63 deletions
diff --git a/src/mongo/dbtests/counttests.cpp b/src/mongo/dbtests/counttests.cpp
index 41ad97c5203..a5a614016da 100644
--- a/src/mongo/dbtests/counttests.cpp
+++ b/src/mongo/dbtests/counttests.cpp
@@ -51,7 +51,7 @@ public:
{
WriteUnitOfWork wunit(&_opCtx);
- _collection = _database->getCollection(&_opCtx, nss());
+ _collection = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (_collection) {
_database->dropCollection(&_opCtx, nss()).transitional_ignore();
}
diff --git a/src/mongo/dbtests/dbtests.cpp b/src/mongo/dbtests/dbtests.cpp
index 62238c52cf7..bba6a636a30 100644
--- a/src/mongo/dbtests/dbtests.cpp
+++ b/src/mongo/dbtests/dbtests.cpp
@@ -99,7 +99,10 @@ Status createIndexFromSpec(OperationContext* opCtx, StringData ns, const BSONObj
Collection* coll;
{
WriteUnitOfWork wunit(opCtx);
- coll = autoDb.getDb()->getOrCreateCollection(opCtx, NamespaceString(ns));
+ coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(NamespaceString(ns));
+ if (!coll) {
+ coll = autoDb.getDb()->createCollection(opCtx, NamespaceString(ns));
+ }
invariant(coll);
wunit.commit();
}
diff --git a/src/mongo/dbtests/dbtests.h b/src/mongo/dbtests/dbtests.h
index e64772a11b7..f0b0166aecb 100644
--- a/src/mongo/dbtests/dbtests.h
+++ b/src/mongo/dbtests/dbtests.h
@@ -80,7 +80,7 @@ public:
}
Collection* getCollection() const {
- return db()->getCollection(_opCtx, _nss);
+ return CollectionCatalog::get(_opCtx).lookupCollectionByNamespace(_nss);
}
private:
diff --git a/src/mongo/dbtests/pdfiletests.cpp b/src/mongo/dbtests/pdfiletests.cpp
index b4f09c83c52..a57a3fb0619 100644
--- a/src/mongo/dbtests/pdfiletests.cpp
+++ b/src/mongo/dbtests/pdfiletests.cpp
@@ -60,7 +60,7 @@ protected:
return NamespaceString("unittests.pdfiletests.Insert");
}
Collection* collection() {
- return _context.db()->getCollection(&_opCtx, nss());
+ return CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
}
const ServiceContext::UniqueOperationContext _opCtxPtr = cc().makeOperationContext();
@@ -75,15 +75,19 @@ public:
WriteUnitOfWork wunit(&_opCtx);
BSONObj x = BSON("x" << 1);
ASSERT(x["_id"].type() == 0);
- Collection* collection = _context.db()->getOrCreateCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
+ if (!coll) {
+ coll = _context.db()->createCollection(&_opCtx, nss());
+ }
+ ASSERT(coll);
OpDebug* const nullOpDebug = nullptr;
- ASSERT(!collection->insertDocument(&_opCtx, InsertStatement(x), nullOpDebug, true).isOK());
+ ASSERT(!coll->insertDocument(&_opCtx, InsertStatement(x), nullOpDebug, true).isOK());
StatusWith<BSONObj> fixed = fixDocumentForInsert(_opCtx.getServiceContext(), x);
ASSERT(fixed.isOK());
x = fixed.getValue();
ASSERT(x["_id"].type() == jstOID);
- ASSERT(collection->insertDocument(&_opCtx, InsertStatement(x), nullOpDebug, true).isOK());
+ ASSERT(coll->insertDocument(&_opCtx, InsertStatement(x), nullOpDebug, true).isOK());
wunit.commit();
}
};
diff --git a/src/mongo/dbtests/plan_executor_invalidation_test.cpp b/src/mongo/dbtests/plan_executor_invalidation_test.cpp
index 590d518feae..8cb1e1401d9 100644
--- a/src/mongo/dbtests/plan_executor_invalidation_test.cpp
+++ b/src/mongo/dbtests/plan_executor_invalidation_test.cpp
@@ -85,11 +85,13 @@ public:
std::unique_ptr<CanonicalQuery> cq = std::move(statusWithCQ.getValue());
// Takes ownership of 'ws', 'scan', and 'cq'.
- auto statusWithPlanExecutor = PlanExecutor::make(std::move(cq),
- std::move(ws),
- std::move(scan),
- _ctx->db()->getCollection(&_opCtx, nss),
- PlanExecutor::YIELD_MANUAL);
+ auto statusWithPlanExecutor =
+ PlanExecutor::make(std::move(cq),
+ std::move(ws),
+ std::move(scan),
+ CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss),
+ PlanExecutor::YIELD_MANUAL);
+
ASSERT_OK(statusWithPlanExecutor.getStatus());
return std::move(statusWithPlanExecutor.getValue());
}
@@ -115,7 +117,7 @@ public:
}
Collection* collection() {
- return _ctx->db()->getCollection(&_opCtx, nss);
+ return CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss);
}
void truncateCollection(Collection* collection) const {
diff --git a/src/mongo/dbtests/query_plan_executor.cpp b/src/mongo/dbtests/query_plan_executor.cpp
index be1b3448555..1726b5c994f 100644
--- a/src/mongo/dbtests/query_plan_executor.cpp
+++ b/src/mongo/dbtests/query_plan_executor.cpp
@@ -148,7 +148,8 @@ public:
ixparams.bounds.endKey = BSON("" << end);
ixparams.bounds.boundInclusion = BoundInclusion::kIncludeBothStartAndEndKeys;
- const Collection* coll = db->getCollection(&_opCtx, nss);
+ const Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss);
+
unique_ptr<WorkingSet> ws(new WorkingSet());
auto ixscan = std::make_unique<IndexScan>(&_opCtx, ixparams, ws.get(), nullptr);
@@ -174,7 +175,7 @@ protected:
private:
const IndexDescriptor* getIndex(Database* db, const BSONObj& obj) {
- Collection* collection = db->getCollection(&_opCtx, nss);
+ Collection* collection = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss);
std::vector<const IndexDescriptor*> indexes;
collection->getIndexCatalog()->findIndexesByKeyPattern(&_opCtx, obj, false, &indexes);
ASSERT_LTE(indexes.size(), 1U);
diff --git a/src/mongo/dbtests/query_stage_count_scan.cpp b/src/mongo/dbtests/query_stage_count_scan.cpp
index 9b6a4f94383..0b3e05c5cba 100644
--- a/src/mongo/dbtests/query_stage_count_scan.cpp
+++ b/src/mongo/dbtests/query_stage_count_scan.cpp
@@ -92,7 +92,8 @@ public:
}
const IndexDescriptor* getIndex(Database* db, const BSONObj& obj) {
- Collection* collection = db->getCollection(&_opCtx, NamespaceString(ns()));
+ Collection* collection =
+ CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(NamespaceString(ns()));
std::vector<const IndexDescriptor*> indexes;
collection->getIndexCatalog()->findIndexesByKeyPattern(&_opCtx, obj, false, &indexes);
return indexes.empty() ? nullptr : indexes[0];
diff --git a/src/mongo/dbtests/query_stage_fetch.cpp b/src/mongo/dbtests/query_stage_fetch.cpp
index 8e6b0930e90..61a472f82e2 100644
--- a/src/mongo/dbtests/query_stage_fetch.cpp
+++ b/src/mongo/dbtests/query_stage_fetch.cpp
@@ -99,7 +99,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -165,7 +165,7 @@ public:
Lock::DBLock lk(&_opCtx, nss().db(), MODE_X);
OldClientContext ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
diff --git a/src/mongo/dbtests/query_stage_merge_sort.cpp b/src/mongo/dbtests/query_stage_merge_sort.cpp
index 14a0d2019d8..75795c5978e 100644
--- a/src/mongo/dbtests/query_stage_merge_sort.cpp
+++ b/src/mongo/dbtests/query_stage_merge_sort.cpp
@@ -145,7 +145,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -210,7 +210,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -274,7 +274,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -339,7 +339,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -408,7 +408,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -471,7 +471,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -523,7 +523,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -640,7 +640,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -742,7 +742,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -808,7 +808,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
diff --git a/src/mongo/dbtests/query_stage_sort.cpp b/src/mongo/dbtests/query_stage_sort.cpp
index 1bb68145894..db699ced854 100644
--- a/src/mongo/dbtests/query_stage_sort.cpp
+++ b/src/mongo/dbtests/query_stage_sort.cpp
@@ -241,7 +241,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -263,7 +263,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -294,7 +294,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -319,7 +319,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -428,7 +428,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -526,7 +526,7 @@ public:
void run() {
dbtests::WriteContextForTests ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wuow(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
diff --git a/src/mongo/dbtests/query_stage_update.cpp b/src/mongo/dbtests/query_stage_update.cpp
index 0ce3c6cbe37..665ae70f031 100644
--- a/src/mongo/dbtests/query_stage_update.cpp
+++ b/src/mongo/dbtests/query_stage_update.cpp
@@ -272,8 +272,7 @@ public:
OpDebug* opDebug = &curOp.debug();
const CollatorInterface* collator = nullptr;
UpdateDriver driver(new ExpressionContext(&_opCtx, collator));
- Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss);
ASSERT(coll);
// Get the RecordIds that would be returned by an in-order scan.
diff --git a/src/mongo/dbtests/querytests.cpp b/src/mongo/dbtests/querytests.cpp
index 9792bfcb7b4..47cb3f55f4d 100644
--- a/src/mongo/dbtests/querytests.cpp
+++ b/src/mongo/dbtests/querytests.cpp
@@ -68,7 +68,7 @@ public:
{
WriteUnitOfWork wunit(&_opCtx);
_database = _context.db();
- _collection = _database->getCollection(&_opCtx, nss());
+ _collection = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (_collection) {
_database->dropCollection(&_opCtx, nss()).transitional_ignore();
}
@@ -219,7 +219,7 @@ public:
{
WriteUnitOfWork wunit(&_opCtx);
Database* db = ctx.db();
- if (db->getCollection(&_opCtx, nss())) {
+ if (CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss())) {
_collection = nullptr;
db->dropCollection(&_opCtx, nss()).transitional_ignore();
}
diff --git a/src/mongo/dbtests/repltests.cpp b/src/mongo/dbtests/repltests.cpp
index 7ca7eb19d80..638e339766a 100644
--- a/src/mongo/dbtests/repltests.cpp
+++ b/src/mongo/dbtests/repltests.cpp
@@ -138,7 +138,7 @@ public:
dbtests::WriteContextForTests ctx(&_opCtx, ns());
WriteUnitOfWork wuow(&_opCtx);
- Collection* c = ctx.db()->getCollection(&_opCtx, nss());
+ Collection* c = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!c) {
c = ctx.db()->createCollection(&_opCtx, nss());
}
@@ -208,7 +208,7 @@ protected:
Lock::GlobalWrite lk(&_opCtx);
OldClientContext ctx(&_opCtx, ns());
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
WriteUnitOfWork wunit(&_opCtx);
coll = db->createCollection(&_opCtx, nss());
@@ -265,7 +265,7 @@ protected:
NamespaceString nss(ns);
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss);
if (!coll) {
WriteUnitOfWork wunit(&_opCtx);
coll = db->createCollection(&_opCtx, nss);
@@ -286,7 +286,7 @@ protected:
OldClientContext ctx(&_opCtx, ns);
WriteUnitOfWork wunit(&_opCtx);
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss);
if (!coll) {
coll = db->createCollection(&_opCtx, nss);
}
@@ -300,7 +300,7 @@ protected:
OldClientContext ctx(&_opCtx, ns());
WriteUnitOfWork wunit(&_opCtx);
Database* db = ctx.db();
- Collection* coll = db->getCollection(&_opCtx, nss());
+ Collection* coll = CollectionCatalog::get(&_opCtx).lookupCollectionByNamespace(nss());
if (!coll) {
coll = db->createCollection(&_opCtx, nss());
}
diff --git a/src/mongo/dbtests/rollbacktests.cpp b/src/mongo/dbtests/rollbacktests.cpp
index cd8f785d99b..d9417770b49 100644
--- a/src/mongo/dbtests/rollbacktests.cpp
+++ b/src/mongo/dbtests/rollbacktests.cpp
@@ -87,20 +87,17 @@ Status renameCollection(OperationContext* opCtx,
return renameCollection(opCtx, source, target, {});
}
Status truncateCollection(OperationContext* opCtx, const NamespaceString& nss) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
return coll->truncate(opCtx);
}
void insertRecord(OperationContext* opCtx, const NamespaceString& nss, const BSONObj& data) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
OpDebug* const nullOpDebug = nullptr;
ASSERT_OK(coll->insertDocument(opCtx, InsertStatement(data), nullOpDebug, false));
}
void assertOnlyRecord(OperationContext* opCtx, const NamespaceString& nss, const BSONObj& data) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
auto cursor = coll->getCursor(opCtx);
auto record = cursor->next();
@@ -110,18 +107,15 @@ void assertOnlyRecord(OperationContext* opCtx, const NamespaceString& nss, const
ASSERT(!cursor->next());
}
void assertEmpty(OperationContext* opCtx, const NamespaceString& nss) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
ASSERT(!coll->getCursor(opCtx)->next());
}
bool indexExists(OperationContext* opCtx, const NamespaceString& nss, const string& idxName) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
return coll->getIndexCatalog()->findIndexByName(opCtx, idxName, true) != nullptr;
}
bool indexReady(OperationContext* opCtx, const NamespaceString& nss, const string& idxName) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
return coll->getIndexCatalog()->findIndexByName(opCtx, idxName, false) != nullptr;
}
size_t getNumIndexEntries(OperationContext* opCtx,
@@ -129,8 +123,7 @@ size_t getNumIndexEntries(OperationContext* opCtx,
const string& idxName) {
size_t numEntries = 0;
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
IndexCatalog* catalog = coll->getIndexCatalog();
auto desc = catalog->findIndexByName(opCtx, idxName, false);
@@ -152,8 +145,7 @@ size_t getNumIndexEntries(OperationContext* opCtx,
}
void dropIndex(OperationContext* opCtx, const NamespaceString& nss, const string& idxName) {
- auto databaseHolder = DatabaseHolder::get(opCtx);
- auto coll = databaseHolder->getDb(opCtx, nss.db())->getCollection(opCtx, nss);
+ auto coll = CollectionCatalog::get(opCtx).lookupCollectionByNamespace(nss);
auto desc = coll->getIndexCatalog()->findIndexByName(opCtx, idxName);
ASSERT(desc);
ASSERT_OK(coll->getIndexCatalog()->dropIndex(opCtx, desc));
@@ -543,7 +535,7 @@ public:
AutoGetDb autoDb(&opCtx, nss.db(), MODE_X);
- Collection* coll = autoDb.getDb()->getCollection(&opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&opCtx).lookupCollectionByNamespace(nss);
IndexCatalog* catalog = coll->getIndexCatalog();
string idxName = "a";
@@ -584,7 +576,7 @@ public:
AutoGetDb autoDb(&opCtx, nss.db(), MODE_X);
- Collection* coll = autoDb.getDb()->getCollection(&opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&opCtx).lookupCollectionByNamespace(nss);
IndexCatalog* catalog = coll->getIndexCatalog();
string idxName = "a";
@@ -637,7 +629,7 @@ public:
AutoGetDb autoDb(&opCtx, nss.db(), MODE_X);
- Collection* coll = autoDb.getDb()->getCollection(&opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&opCtx).lookupCollectionByNamespace(nss);
IndexCatalog* catalog = coll->getIndexCatalog();
string idxName = "a";
@@ -700,7 +692,7 @@ public:
assertGet(CollectionOptions::parse(BSONObj(), CollectionOptions::parseForCommand));
ASSERT_OK(ctx.db()->userCreateNS(&opCtx, nss, collectionOptions, false));
ASSERT(collectionExists(&opCtx, &ctx, nss.ns()));
- Collection* coll = ctx.db()->getCollection(&opCtx, nss);
+ Collection* coll = CollectionCatalog::get(&opCtx).lookupCollectionByNamespace(nss);
IndexCatalog* catalog = coll->getIndexCatalog();
ASSERT_OK(catalog->createIndexOnEmptyCollection(&opCtx, specA));