summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Mulrow <jack.mulrow@mongodb.com>2021-05-05 16:06:16 +0000
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-05-14 16:30:33 +0000
commit85eccbb8c3ed963c0caddbc8fdb33ce24c06a175 (patch)
tree454c3a3277a1678b1fe77d60a95a6d0129aae0d2
parentaef7c0fc562ce2e8ddd40b5134c48bcdf57280da (diff)
downloadmongo-85eccbb8c3ed963c0caddbc8fdb33ce24c06a175.tar.gz
SERVER-56686 Don't return tenant migration details to users in errors
(cherry picked from commit 2cd5c5110d837a2de0dd197f805531b5b409f2a2)
-rw-r--r--src/mongo/db/repl/tenant_migration_access_blocker_util.cpp45
-rw-r--r--src/mongo/db/repl/tenant_migration_donor_access_blocker.cpp3
2 files changed, 19 insertions, 29 deletions
diff --git a/src/mongo/db/repl/tenant_migration_access_blocker_util.cpp b/src/mongo/db/repl/tenant_migration_access_blocker_util.cpp
index e68e56a0404..5583c24451a 100644
--- a/src/mongo/db/repl/tenant_migration_access_blocker_util.cpp
+++ b/src/mongo/db/repl/tenant_migration_access_blocker_util.cpp
@@ -207,35 +207,26 @@ SemiFuture<void> checkIfCanReadOrBlock(OperationContext* opCtx, const OpMsgReque
}
return donorMtabStatus;
})
- .onError<ErrorCodes::CallbackCanceled>([cancelTimeoutSource,
- cancelCanReadSource,
- donorMtab,
- recipientMtab,
- timeoutError = opCtx->getTimeoutError()](
- Status status) mutable {
- auto isCanceledDueToTimeout = cancelTimeoutSource.token().isCanceled();
-
- if (!isCanceledDueToTimeout) {
- cancelTimeoutSource.cancel();
- }
-
- // At least one of 'donorMtab' or 'recipientMtab' must exist if we were canceled here.
- BSONObj info = donorMtab ? donorMtab->getDebugInfo() : recipientMtab->getDebugInfo();
- if (recipientMtab) {
- info =
- info.addField(recipientMtab->getDebugInfo().getField("donorConnectionString"));
- }
+ .onError<ErrorCodes::CallbackCanceled>(
+ [cancelTimeoutSource,
+ cancelCanReadSource,
+ donorMtab,
+ recipientMtab,
+ timeoutError = opCtx->getTimeoutError()](Status status) mutable {
+ auto isCanceledDueToTimeout = cancelTimeoutSource.token().isCanceled();
+
+ if (!isCanceledDueToTimeout) {
+ cancelTimeoutSource.cancel();
+ }
- if (isCanceledDueToTimeout) {
- return Status(
- timeoutError,
- "Blocked read timed out waiting for tenant migration to commit or abort",
- info);
- }
+ if (isCanceledDueToTimeout) {
+ return Status(
+ timeoutError,
+ "Blocked read timed out waiting for tenant migration to commit or abort");
+ }
- return status.withContext(str::stream() << "Canceled read blocked by tenant migration "
- << info.toString());
- })
+ return status.withContext("Canceled read blocked by tenant migration");
+ })
.semi(); // To require continuation in the user executor.
}
diff --git a/src/mongo/db/repl/tenant_migration_donor_access_blocker.cpp b/src/mongo/db/repl/tenant_migration_donor_access_blocker.cpp
index 9a45a4e3621..0059c4dcaeb 100644
--- a/src/mongo/db/repl/tenant_migration_donor_access_blocker.cpp
+++ b/src/mongo/db/repl/tenant_migration_donor_access_blocker.cpp
@@ -128,8 +128,7 @@ Status TenantMigrationDonorAccessBlocker::waitUntilCommittedOrAborted(OperationC
} else if (idx == 1) {
// Deadline finished first, return error
return Status(opCtx->getTimeoutError(),
- "Operation timed out waiting for tenant migration to commit or abort",
- getDebugInfo());
+ "Operation timed out waiting for tenant migration to commit or abort");
}
MONGO_UNREACHABLE;
}