diff options
author | Arun Banala <arun.banala@mongodb.com> | 2021-02-17 19:17:00 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2021-02-18 12:45:45 +0000 |
commit | 69f865ae18b69477467648f6356cdbfd9d035d19 (patch) | |
tree | cfd2e2c077c53f5437a49eb7cf297266c14d7f7e | |
parent | aac35501ac8d4cea15e69ad6230d99761682ef65 (diff) | |
download | mongo-69f865ae18b69477467648f6356cdbfd9d035d19.tar.gz |
SERVER-54604 Add support of $_testApiVersion expression in SBE
-rw-r--r-- | src/mongo/db/pipeline/expression_test_api_version.cpp | 4 | ||||
-rw-r--r-- | src/mongo/db/query/sbe_stage_builder_expression.cpp | 3 |
2 files changed, 3 insertions, 4 deletions
diff --git a/src/mongo/db/pipeline/expression_test_api_version.cpp b/src/mongo/db/pipeline/expression_test_api_version.cpp index bd3f3c2e47e..7c77895bfff 100644 --- a/src/mongo/db/pipeline/expression_test_api_version.cpp +++ b/src/mongo/db/pipeline/expression_test_api_version.cpp @@ -38,9 +38,7 @@ REGISTER_TEST_EXPRESSION(_testApiVersion, ExpressionTestApiVersion::parse); ExpressionTestApiVersion::ExpressionTestApiVersion(ExpressionContext* const expCtx, bool unstable, bool deprecated) - : Expression(expCtx), _unstable(unstable), _deprecated(deprecated) { - expCtx->sbeCompatible = false; -} + : Expression(expCtx), _unstable(unstable), _deprecated(deprecated) {} boost::intrusive_ptr<Expression> ExpressionTestApiVersion::parse(ExpressionContext* const expCtx, BSONElement expr, diff --git a/src/mongo/db/query/sbe_stage_builder_expression.cpp b/src/mongo/db/query/sbe_stage_builder_expression.cpp index a345e99d21f..820035e8450 100644 --- a/src/mongo/db/query/sbe_stage_builder_expression.cpp +++ b/src/mongo/db/query/sbe_stage_builder_expression.cpp @@ -2435,7 +2435,8 @@ public: visitConditionalExpression(expr); } void visit(ExpressionTestApiVersion* expr) final { - unsupportedExpression("$_testApiVersion"); + _context->pushExpr( + makeConstant(sbe::value::TypeTags::NumberInt32, sbe::value::bitcastFrom<int32_t>(1))); } void visit(ExpressionToLower* expr) final { generateStringCaseConversionExpression(_context, "toLower"); |