summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/document_source_limit.cpp
diff options
context:
space:
mode:
authorDavid Storch <david.storch@10gen.com>2016-10-03 11:17:13 -0400
committerDavid Storch <david.storch@10gen.com>2016-10-03 16:13:51 -0400
commit8758a5c7be68effbc4a1f857787bfb7b201c6389 (patch)
tree4880b453167dcada211c278dbc34ff095e31d81c /src/mongo/db/pipeline/document_source_limit.cpp
parentb8a5742ef7623640eb6977f14e25649bad661208 (diff)
downloadmongo-8758a5c7be68effbc4a1f857787bfb7b201c6389.tar.gz
SERVER-25038 add LiteParsedPipeline
This provides a way to do pre-parse validity checks. Full parsing of the Pipeline must be done under the collection lock, when the collation is known.
Diffstat (limited to 'src/mongo/db/pipeline/document_source_limit.cpp')
-rw-r--r--src/mongo/db/pipeline/document_source_limit.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mongo/db/pipeline/document_source_limit.cpp b/src/mongo/db/pipeline/document_source_limit.cpp
index c358efa9441..cdc3ed2d0a6 100644
--- a/src/mongo/db/pipeline/document_source_limit.cpp
+++ b/src/mongo/db/pipeline/document_source_limit.cpp
@@ -28,11 +28,13 @@
#include "mongo/platform/basic.h"
+#include "mongo/db/pipeline/document_source.h"
+
#include "mongo/db/jsobj.h"
#include "mongo/db/pipeline/document.h"
-#include "mongo/db/pipeline/document_source.h"
#include "mongo/db/pipeline/expression.h"
#include "mongo/db/pipeline/expression_context.h"
+#include "mongo/db/pipeline/lite_parsed_document_source.h"
#include "mongo/db/pipeline/value.h"
namespace mongo {
@@ -43,7 +45,9 @@ DocumentSourceLimit::DocumentSourceLimit(const intrusive_ptr<ExpressionContext>&
long long limit)
: DocumentSource(pExpCtx), _limit(limit) {}
-REGISTER_DOCUMENT_SOURCE(limit, DocumentSourceLimit::createFromBson);
+REGISTER_DOCUMENT_SOURCE(limit,
+ LiteParsedDocumentSourceDefault::parse,
+ DocumentSourceLimit::createFromBson);
const char* DocumentSourceLimit::getSourceName() const {
return "$limit";