diff options
Diffstat (limited to 'src/mongo/db/repl/tenant_migration_shard_merge_util.cpp')
-rw-r--r-- | src/mongo/db/repl/tenant_migration_shard_merge_util.cpp | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/src/mongo/db/repl/tenant_migration_shard_merge_util.cpp b/src/mongo/db/repl/tenant_migration_shard_merge_util.cpp index 3d5deee7ce2..b683fe3aebf 100644 --- a/src/mongo/db/repl/tenant_migration_shard_merge_util.cpp +++ b/src/mongo/db/repl/tenant_migration_shard_merge_util.cpp @@ -176,9 +176,7 @@ void wiredTigerImportFromBackupCursor(OperationContext* opCtx, invariant(db); Lock::CollectionLock collLock(opCtx, nss, MODE_X); auto catalog = CollectionCatalog::get(opCtx); - // TODO SERVER-63789 Uncomment WriteUnitOfWork declaration below when we - // make file import async. - // WriteUnitOfWork wunit(opCtx); + WriteUnitOfWork wunit(opCtx); AutoStatsTracker statsTracker(opCtx, nss, Top::LockType::NotLocked, @@ -218,9 +216,8 @@ void wiredTigerImportFromBackupCursor(OperationContext* opCtx, makeCountsChange(ownedCollection->getRecordStore(), collectionMetadata)); CollectionCatalog::get(opCtx)->onCreateCollection(opCtx, std::move(ownedCollection)); - // TODO SERVER-63789 Uncomment wunit.commit() call below when we - // make file copy/import async. - // wunit.commit(); + wunit.commit(); + LOGV2(6114300, "Imported donor collection", "ns"_attr = nss, @@ -240,23 +237,25 @@ void cloneFile(OperationContext* opCtx, const BSONObj& metadataDoc) { makeReplWriterPool(tenantApplierThreadCount, "TenantMigrationFileClonerWriter"_sd); ON_BLOCK_EXIT([&] { - client->shutdownAndDisallowReconnect(); - + if (client) { + client->shutdownAndDisallowReconnect(); + } writerPool->shutdown(); writerPool->join(); }); auto fileName = metadataDoc["filename"].str(); auto migrationId = UUID(uassertStatusOK(UUID::parse(metadataDoc[kMigrationIdFieldName]))); - LOGV2_DEBUG(6113320, - 1, - "Cloning file", - "migrationId"_attr = migrationId, - "metadata"_attr = metadataDoc); auto backupId = UUID(uassertStatusOK(UUID::parse(metadataDoc[kBackupIdFieldName]))); auto remoteDbpath = metadataDoc["remoteDbpath"].str(); size_t fileSize = std::max(0ll, metadataDoc["fileSize"].safeNumberLong()); auto relativePath = _getPathRelativeTo(fileName, metadataDoc[kDonorDbPathFieldName].str()); + LOGV2_DEBUG(6113320, + 1, + "Cloning file", + "migrationId"_attr = migrationId, + "metadata"_attr = metadataDoc, + "destinationRelativePath"_attr = relativePath); invariant(!relativePath.empty()); // Connect the client. |