diff options
Diffstat (limited to 'src/mongo/db/index_builder.cpp')
-rw-r--r-- | src/mongo/db/index_builder.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/mongo/db/index_builder.cpp b/src/mongo/db/index_builder.cpp index a2f25c3475c..6f5804d17c4 100644 --- a/src/mongo/db/index_builder.cpp +++ b/src/mongo/db/index_builder.cpp @@ -166,9 +166,14 @@ Status IndexBuilder::_build(OperationContext* opCtx, Lock::CollectionLock collLock(opCtx, ns, MODE_IX); // WriteConflict exceptions and statuses are not expected to escape this method. status = indexer.insertAllDocumentsInCollection(opCtx, coll); - } - if (!status.isOK()) { - return status; + if (!status.isOK()) { + return status; + } + + status = indexer.checkConstraints(opCtx); + if (!status.isOK()) { + return status; + } } status = writeConflictRetry(opCtx, "Commit index build", ns.ns(), [opCtx, coll, &indexer, &ns] { |