Skip to content

Commit

Permalink
SERVER-37643 DatabaseTest does not require MultiIndexBlock for unfini…
Browse files Browse the repository at this point in the history
…shed index build
  • Loading branch information
benety committed Dec 27, 2018
1 parent 9ff8d74 commit 359b7be
Showing 1 changed file with 15 additions and 9 deletions.
24 changes: 15 additions & 9 deletions src/mongo/db/catalog/database_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,12 +34,13 @@

#include "mongo/bson/util/builder.h"
#include "mongo/db/catalog/collection_catalog_entry.h"
#include "mongo/db/catalog/multi_index_block.h"
#include "mongo/db/catalog/index_catalog.h"
#include "mongo/db/catalog/uuid_catalog.h"
#include "mongo/db/client.h"
#include "mongo/db/concurrency/d_concurrency.h"
#include "mongo/db/concurrency/write_conflict_exception.h"
#include "mongo/db/db_raii.h"
#include "mongo/db/index/index_descriptor.h"
#include "mongo/db/jsobj.h"
#include "mongo/db/namespace_string.h"
#include "mongo/db/op_observer.h"
Expand Down Expand Up @@ -299,21 +300,26 @@ void _testDropCollectionThrowsExceptionIfThereAreIndexesInProgress(OperationCont
wuow.commit();
}

MultiIndexBlock indexer(opCtx, collection);
ON_BLOCK_EXIT([&indexer, opCtx] {
WriteUnitOfWork wuow(opCtx);
ASSERT_OK(indexer.commit());
wuow.commit();
});

auto indexCatalog = collection->getIndexCatalog();
ASSERT_EQUALS(indexCatalog->numIndexesInProgress(opCtx), 0);
auto indexInfoObj = BSON(
"v" << int(IndexDescriptor::kLatestIndexVersion) << "key" << BSON("a" << 1) << "name"
<< "a_1"
<< "ns"
<< nss.ns());
ASSERT_OK(indexer.init(indexInfoObj).getStatus());

auto indexBuildBlock = indexCatalog->createIndexBuildBlock(opCtx, indexInfoObj);
{
WriteUnitOfWork wuow(opCtx);
ASSERT_OK(indexBuildBlock->init());
wuow.commit();
}
ON_BLOCK_EXIT([&indexBuildBlock, opCtx] {
WriteUnitOfWork wuow(opCtx);
indexBuildBlock->success();
wuow.commit();
});

ASSERT_GREATER_THAN(indexCatalog->numIndexesInProgress(opCtx), 0);

WriteUnitOfWork wuow(opCtx);
Expand Down

0 comments on commit 359b7be

Please sign in to comment.