summaryrefslogtreecommitdiff
path: root/src/mongo/s/query
diff options
context:
space:
mode:
authorA. Jesse Jiryu Davis <jesse@mongodb.com>2021-05-04 19:29:17 -0400
committerEvergreen Agent <no-reply@evergreen.mongodb.com>2021-05-13 17:48:10 +0000
commit500a405a5ce235507f56fb47e8d5d4b368d3458d (patch)
treeeecb1020c3049a816d28ffd5461b8d3ecab8686a /src/mongo/s/query
parent2070fc76b3604f8c04997862159b0fc721eeb465 (diff)
downloadmongo-500a405a5ce235507f56fb47e8d5d4b368d3458d.tar.gz
SERVER-56550 Require consistent API params in getMore and txns
Transaction-continuing commands must use the same API parameters as the transaction's first command (it is no longer optional), and similarly getMore must use the same as the cursor-creating command.
Diffstat (limited to 'src/mongo/s/query')
-rw-r--r--src/mongo/s/query/cluster_find.cpp15
1 files changed, 4 insertions, 11 deletions
diff --git a/src/mongo/s/query/cluster_find.cpp b/src/mongo/s/query/cluster_find.cpp
index 4f9f6ddd446..9f2665d95ac 100644
--- a/src/mongo/s/query/cluster_find.cpp
+++ b/src/mongo/s/query/cluster_find.cpp
@@ -455,18 +455,11 @@ Status setUpOperationContextStateForGetMore(OperationContext* opCtx,
}
auto apiParamsFromClient = APIParameters::get(opCtx);
- // TODO (SERVER-56550): Do this check even if !apiParamsFromClient.getParamsPassed().
- if (apiParamsFromClient.getParamsPassed()) {
- uassert(
- ErrorCodes::APIMismatchError,
- "API param conflict: getMore used params {}, the cursor-creating command used {}"_format(
- apiParamsFromClient.toBSON().toString(),
- cursor->getAPIParameters().toBSON().toString()),
+ uassert(ErrorCodes::APIMismatchError,
+ "API parameter mismatch: getMore used params {}, the cursor-creating command "
+ "used {}"_format(apiParamsFromClient.toBSON().toString(),
+ cursor->getAPIParameters().toBSON().toString()),
apiParamsFromClient == cursor->getAPIParameters());
- }
-
- // TODO (SERVER-56550): Remove.
- APIParameters::get(opCtx) = cursor->getAPIParameters();
// If the originating command had a 'comment' field, we extract it and set it on opCtx. Note
// that if the 'getMore' command itself has a 'comment' field, we give precedence to it.