diff options
Diffstat (limited to 'src/mongo/db/index_builder.cpp')
-rw-r--r-- | src/mongo/db/index_builder.cpp | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/src/mongo/db/index_builder.cpp b/src/mongo/db/index_builder.cpp index d749a330184..6cbfd6e4ae6 100644 --- a/src/mongo/db/index_builder.cpp +++ b/src/mongo/db/index_builder.cpp @@ -82,33 +82,33 @@ void IndexBuilder::run() { Client::initThread(name().c_str()); LOG(2) << "IndexBuilder building index " << _index; - const ServiceContext::UniqueOperationContext txnPtr = cc().makeOperationContext(); - OperationContext& txn = *txnPtr; - txn.lockState()->setShouldConflictWithSecondaryBatchApplication(false); + const ServiceContext::UniqueOperationContext opCtxPtr = cc().makeOperationContext(); + OperationContext& opCtx = *opCtxPtr; + opCtx.lockState()->setShouldConflictWithSecondaryBatchApplication(false); - AuthorizationSession::get(txn.getClient())->grantInternalAuthorization(); + AuthorizationSession::get(opCtx.getClient())->grantInternalAuthorization(); { - stdx::lock_guard<Client> lk(*txn.getClient()); - CurOp::get(txn)->setNetworkOp_inlock(dbInsert); + stdx::lock_guard<Client> lk(*opCtx.getClient()); + CurOp::get(opCtx)->setNetworkOp_inlock(dbInsert); } NamespaceString ns(_index["ns"].String()); - ScopedTransaction transaction(&txn, MODE_IX); - Lock::DBLock dlk(txn.lockState(), ns.db(), MODE_X); - OldClientContext ctx(&txn, ns.getSystemIndexesCollection()); + ScopedTransaction transaction(&opCtx, MODE_IX); + Lock::DBLock dlk(opCtx.lockState(), ns.db(), MODE_X); + OldClientContext ctx(&opCtx, ns.getSystemIndexesCollection()); - Database* db = dbHolder().get(&txn, ns.db().toString()); + Database* db = dbHolder().get(&opCtx, ns.db().toString()); - Status status = _build(&txn, db, true, &dlk); + Status status = _build(&opCtx, db, true, &dlk); if (!status.isOK()) { error() << "IndexBuilder could not build index: " << redact(status); fassert(28555, ErrorCodes::isInterruption(status.code())); } } -Status IndexBuilder::buildInForeground(OperationContext* txn, Database* db) const { - return _build(txn, db, false, NULL); +Status IndexBuilder::buildInForeground(OperationContext* opCtx, Database* db) const { + return _build(opCtx, db, false, NULL); } void IndexBuilder::waitForBgIndexStarting() { @@ -120,7 +120,7 @@ void IndexBuilder::waitForBgIndexStarting() { _bgIndexStarting = false; } -Status IndexBuilder::_build(OperationContext* txn, +Status IndexBuilder::_build(OperationContext* opCtx, Database* db, bool allowBackgroundBuilding, Lock::DBLock* dbLock) const { @@ -130,31 +130,31 @@ Status IndexBuilder::_build(OperationContext* txn, if (!c) { while (true) { try { - WriteUnitOfWork wunit(txn); - c = db->getOrCreateCollection(txn, ns.ns()); + WriteUnitOfWork wunit(opCtx); + c = db->getOrCreateCollection(opCtx, ns.ns()); verify(c); wunit.commit(); break; } catch (const WriteConflictException& wce) { LOG(2) << "WriteConflictException while creating collection in IndexBuilder" << ", retrying."; - txn->recoveryUnit()->abandonSnapshot(); + opCtx->recoveryUnit()->abandonSnapshot(); continue; } } } { - stdx::lock_guard<Client> lk(*txn->getClient()); + stdx::lock_guard<Client> lk(*opCtx->getClient()); // Show which index we're building in the curop display. - CurOp::get(txn)->setQuery_inlock(_index); + CurOp::get(opCtx)->setQuery_inlock(_index); } bool haveSetBgIndexStarting = false; while (true) { Status status = Status::OK(); try { - MultiIndexBlock indexer(txn, c); + MultiIndexBlock indexer(opCtx, c); indexer.allowInterruption(); if (allowBackgroundBuilding) @@ -183,7 +183,7 @@ Status IndexBuilder::_build(OperationContext* txn, dbLock->relockWithMode(MODE_IX); } - Lock::CollectionLock colLock(txn->lockState(), ns.ns(), MODE_IX); + Lock::CollectionLock colLock(opCtx->lockState(), ns.ns(), MODE_IX); status = indexer.insertAllDocumentsInCollection(); } @@ -191,7 +191,7 @@ Status IndexBuilder::_build(OperationContext* txn, if (allowBackgroundBuilding) { dbLock->relockWithMode(MODE_X); } - WriteUnitOfWork wunit(txn); + WriteUnitOfWork wunit(opCtx); indexer.commit(); wunit.commit(); } @@ -204,7 +204,7 @@ Status IndexBuilder::_build(OperationContext* txn, if (allowBackgroundBuilding) { dbLock->relockWithMode(MODE_X); - Database* reloadDb = dbHolder().get(txn, ns.db()); + Database* reloadDb = dbHolder().get(opCtx, ns.db()); fassert(28553, reloadDb); fassert(28554, reloadDb->getCollection(ns.ns())); } @@ -223,7 +223,7 @@ Status IndexBuilder::_build(OperationContext* txn, LOG(2) << "WriteConflictException while creating index in IndexBuilder, retrying."; - txn->recoveryUnit()->abandonSnapshot(); + opCtx->recoveryUnit()->abandonSnapshot(); } } } |