summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/parsed_add_fields.h
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-43291 Consolidate projection execution interfacesAnton Korshunov2019-11-151-238/+0
|
* SERVER-43404 Delete ParsedAggregationProjection::parse() and use ↵Anton Korshunov2019-11-131-2/+88
| | | | ProjectionAST in DocumentSourceProject
* SERVER-39339 Remove `stdx/memory.h`ADAM David Alan Martin2019-06-101-1/+0
|
* SERVER-40828 Add getter for expressions on projection nodesTed Tuckman2019-06-071-0/+4
|
* 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-35493 Refactor Inclusion- and ExclusionNode into ProjectionNode base ↵Bernard Gorman2018-10-261-9/+9
| | | | class
* SERVER-37651 Update header files with new licenseRamon Fernandez2018-10-221-8/+10
|
* SERVER-35325 Implement key generation for "allPaths" indexesBernard Gorman2018-07-131-1/+8
|
* SERVER-35329 Package agg projection code for use outside of agg executionBernard Gorman2018-06-221-3/+4
|
* SERVER-29935 Clarify SingleDocumentTransformation's explain.Charlie Swanson2017-07-031-1/+1
| | | | | It's slightly different than that on DocumentSource, which should be more obvious.
* SERVER-20092: Add ability for DocumentSourceCursor to coalesce with a stage ↵Nick Zolnierz2017-05-231-2/+2
| | | | if it is doing an equivalent projection
* SERVER-28651 Don't hold Document ref across group iterationsr3.5.7James Wahlin2017-05-091-1/+1
|
* SERVER-28651 Pass agg Variables root doc via Expression::evaluate()James Wahlin2017-05-031-7/+1
|
* SERVER-28651 Move agg var ownership to ExpressionContextJames Wahlin2017-04-291-24/+8
|
* SERVER-27115 extend $match swapping optimization to handle renamed fieldsDavid Storch2017-04-181-2/+5
| | | | | | | | If a field renamed by $project or $addFields is used in a subsequent $match, we can now swap the $match and update it to use the original (or, "renamed from") field name. This allows $match planning to result in better index usage in some cases.
* 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-26598 only report computed paths as modified in $addFieldsKyle Suarez2017-01-191-2/+3
| | | | | This allows a $match to be pushed before $addFields if there are no conflicts between the paths involved in each stage.
* SERVER-25535 Remove injectExpressionContext().Charlie Swanson2016-12-161-10/+11
| | | | | | | | | | | | | | | 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-19153 push $match as far forward as possibleDavid Storch2016-10-061-0/+5
|
* SERVER-5781 addFields stage.Carly Robison2016-08-111-0/+152
This aggregation stage allows the addition of computed fields to a document while preserving all existing fields.