From 9354aa6ccf769929ed3e7bd09f0dd95f8ab3a2a2 Mon Sep 17 00:00:00 2001 From: Cheahuychou Mao Date: Tue, 16 May 2023 18:42:34 +0000 Subject: SERVER-76807 Avoid adding opTimes for non-retryable internal transactions to the session migration new opTime buffer --- src/mongo/db/s/session_catalog_migration_source.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/mongo/db/s/session_catalog_migration_source.cpp') diff --git a/src/mongo/db/s/session_catalog_migration_source.cpp b/src/mongo/db/s/session_catalog_migration_source.cpp index f10a0bdfcbc..37a87b5e131 100644 --- a/src/mongo/db/s/session_catalog_migration_source.cpp +++ b/src/mongo/db/s/session_catalog_migration_source.cpp @@ -685,6 +685,13 @@ bool SessionCatalogMigrationSource::_fetchNextNewWriteOplog(OperationContext* op const auto sessionId = *nextNewWriteOplog.getSessionId(); if (isInternalSessionForNonRetryableWrite(sessionId)) { + dassert(0, + str::stream() << "Cannot add op time for a non-retryable " + "internal transaction to the " + "session migration op time queue - " + << "session id:" << sessionId << " oplog entry: " + << redact(nextNewWriteOplog.toBSONForLogging())); + // Transactions inside internal sessions for non-retryable writes are not // retryable so there is no need to transfer their write history to the // recipient. -- cgit v1.2.1