summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/document_source_facet.h
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-40317 Fail query when $facet intermediate output exceeds 100MBDavid Storch2020-08-141-2/+8
| | | | | Co-authored-by: Justin Seyster <justin.seyster@mongodb.com> Co-authored-by: Jacob Evans <jacob.evans@10gen.com>
* SERVER-44689 Add serverStatus counter for each use of an aggregation stage ↵Mihai Andrei2020-02-191-2/+3
| | | | in a user's request
* SERVER-45573 Implement and test auth for $unionWithNicholas Zolnierz2020-01-311-19/+11
|
* SERVER-45590 Allow building a LiteParsedPipeline without first building an ↵Arun Banala2020-01-291-8/+5
| | | | AggregationRequest
* SERVER-42584 PlanStageStats in aggregationXinhao Zhang2019-08-161-6/+6
|
* SERVER-41290 Pipeline stages can incorrectly passthrough mongos when nested ↵Arun Banala2019-06-271-0/+9
| | | | within a sub-pipeline
* SERVER-41180 Rename 'MergingLogic' to 'DistributedPlanLogic' to avoid ↵Arun Banala2019-05-241-2/+2
| | | | confusion with $merge
* Revert "SERVER-39403 Implement visitor for DocumentSource as precursor work for"Nick Zolnierz2019-04-111-4/+0
| | | | This reverts commit 1b00abfda7592d701f632b9550f973c56cea818f.
* SERVER-39403 Implement visitor for DocumentSource as precursor work forNick Zolnierz2019-04-101-0/+4
| | | | encryption in agg
* SERVER-40312 Create a generic tree for pipeline metatdataJacob Evans2019-04-051-0/+4
|
* Revert "SERVER-40312 Create a generic tree for pipeline metatdata"Jacob Evans2019-04-051-4/+0
| | | | | | | This reverts commit aad70256024c8447344a4d7f1cfdda742d1904ee. This reverts commit 3765a3200adb31239fad3abaeddebe81e5aa9280. This reverts commit f16366d55edae0bf02cd3d0a532e31c7c938e8db. This reverts commit 33598e48f9be86c16990051934d4e72f073c2b86.
* SERVER-40312 Create a generic tree for pipeline metatdataJacob Evans2019-04-041-0/+4
|
* SERVER-38360 Prevent $out writing to ns read from in the same pipelineCharlie Swanson2019-02-141-1/+1
| | | | | This restriction only applies to $out with modes "insertDocuments" and "replaceDocuments".
* SERVER-39560 - remove leading blank line on all C++ filesBilly Donahue2019-02-131-1/+0
| | | | | | Remove leading comments that are just stating the filename. Move any file-level comments below the copyright banner. Remove leading blank lines.
* SERVER-38311 Change out merging strategyCharlie Swanson2019-02-131-6/+4
| | | | | Allows an $out stage to run in parallel on all shards if the target collection is sharded and so is the input collection to the aggregate.
* Revert " SERVER-38311 Adjust $out merging strategy"Charlie Swanson2019-01-161-4/+6
| | | | This reverts commit 0cb2195939494660334db8e9d0a52509caeb621c.
* SERVER-38311 Adjust $out merging strategyCharlie Swanson2019-01-161-6/+4
|
* SERVER-37651 Update header files with new licenseRamon Fernandez2018-10-221-8/+10
|
* SERVER-36667: Add ability to have a mixture of sharded and unsharded foreign ↵Nick Zolnierz2018-08-211-0/+2
| | | | namespaces in an aggregation
* SERVER-33323 Refactor agg cursor merging on mongosCharlie Swanson2018-08-151-1/+1
| | | | | | | | | | This commit makes it so that aggregations will always use a $mergeCursors as a wrapper around a AsyncResultsMerger, which is new behavior for mongos. As part of this refactor, we can delete the concept of a 'merging presorted' $sort stage (which is now handled by the AsyncResultsMerger) and delete the DocumentSourceRouterAdapter stage which talked to a RouterStageMerge, instead directly using a $mergeCursors stage.
* SERVER-19260 Log whether allowDiskUse:true aggregations used diskMinji2018-08-011-0/+1
|
* SERVER-35329 Package agg projection code for use outside of agg executionBernard Gorman2018-06-221-1/+1
|
* SERVER-25596 Rename SplittableDocumentSource to NeedsMergerDocumentSourceKevinCybura2018-05-111-1/+1
| | | | | | Closes #1237 Signed-off-by: Charlie Swanson <charlie.swanson@mongodb.com>
* SERVER-32190 Make MongoProcessInterface always availableCharlie Swanson2017-12-191-7/+5
|
* SERVER-31346 Disallow 3.6 query features in views under FCV 3.4James Wahlin2017-10-201-0/+4
|
* SERVER-29141 Enable change streams on sharded collectionsCharlie Swanson2017-10-091-2/+2
|
* SERVER-29141 Extend StageConstraints to allow kLocalOnly and kMongos host ↵Bernard Gorman2017-10-041-1/+1
| | | | requirements, given pipeline split state
* SERVER-29609 Rename MongodInterface to MongoProcessInterface.Charlie Swanson2017-10-031-2/+2
|
* SERVER-29506 Require $changeNotification to be the first stage.Eddie Louie2017-08-011-1/+1
| | | | This reverts commit babab967892f81f3107903cb41672503de791998.
* Revert "SERVER-29506 Require $changeNotification to be the first stage."Eddie Louie2017-08-011-1/+1
| | | | This reverts commit 2431e1356823d898ef8af16997d6f63b65b385a5.
* SERVER-29506 Require $changeNotification to be the first stage.Charlie Swanson2017-08-011-1/+1
|
* SERVER-29371 DocumentSource classes should provide auth requirementsJames Wahlin2017-07-251-3/+9
|
* SERVER-25694 Eliminate race in PlanExecutor cleanup.Charlie Swanson2017-04-131-2/+5
| | | | | | | | | | | Ensures that a collection lock is held in at least MODE_IS while deregistering a PlanExecutor from the cursor manager. Introduces new PlanExecutor::dispose() and ClientCursor::dispose() methods that must be called before destruction of those classes, and ensures they are called before destruction. These calls will thread an OperationContext all the way through to DocumentSource::dispose() for each stage in a Pipeline, which will give DocumentSourceCursor a chance to acquire locks and deregister its PlanExecutor if necessary.
* SERVER-19758 add support for "executionStats" and "allPlansExecution" to agg ↵David Storch2017-03-131-1/+1
| | | | | | | | | | | | | | | | | explain Like other explainable commands, aggregate can now be explained using the explain command, e.g. db.runCommand({explain: {aggregate: ...}, verbosity: "executionStats"}). The existing explain:true flag corresponds to "queryPlanner" mode and is still supported. However, explain:true cannot be specified when explaining aggregate via the explain command. Additional execution information is provided only in the $cursor section of the aggregation explain output. Having aggregation stages themselves track and report execution info is further work.
* SERVER-25535 Remove injectExpressionContext().Charlie Swanson2016-12-161-6/+1
| | | | | | | | | | | | | | | These methods were formally used to propagate a new ExpressionContext to stages, accumulators, or expressions which potentially needed to comparisons. Originally, this was necessary since Pipeline parsing happened outside of the collection lock and thus could not determine if there was a default collation on the collection. This meant that the collation could change after parsing and any operators that might compare strings would need to know about it. We have since moved parsing within the lock, so the collation can be known at parse time and the ExpressionContext should not change. This patch requires an ExpressionContext at construction time, and disallows changing the collation on an ExpressionContext.
* SERVER-25038 add LiteParsedPipelineDavid Storch2016-10-031-1/+17
| | | | | | 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.
* SERVER-24153 Allow pipelines within $facet stage to process in batches.Charlie Swanson2016-09-011-6/+13
| | | | | This approach removes the need to buffer all documents in memory, thus removing concerns about spilling intermediate results to disk.
* SERVER-25864 Propagate calls to needsPrimaryShardMerger through $facet.Charlie Swanson2016-09-011-3/+4
|
* SERVER-25584 Ensure $facet and $bucketAuto run on merging shard.Charlie Swanson2016-08-161-1/+12
|
* SERVER-24508 DocumentComparator and ValueComparatorDavid Storch2016-07-141-0/+5
| | | | | | | | | | | - Changes the Document/Value library to require comparisons to be made in the context of a comparator object. This is prep work for full collation support in the aggregation system. - Adds injectExpressionContext() to propagate the ExpressionContext containing the comparator object to all DocumentSource, Accumulator, and Expression instances involved in the Pipeline.
* SERVER-24640 Implement getDependencies for $facet stage.Charlie Swanson2016-07-141-2/+4
|
* SERVER-23654 Add $facet aggregation stageCharlie Swanson2016-06-241-0/+108