Charlie Swanson
52cd830b71
SERVER-25473 Inject ExpressionContext before optimizing pipeline.
2016-08-11 18:25:07 -04:00
Carly Robison
5a83f95657
SERVER-5781 addFields stage.
...
This aggregation stage allows the addition of computed fields to a document while preserving all existing fields.
2016-08-11 10:49:43 -04:00
Max Hirschhorn
fad11e0917
SERVER-24769 Add support for $lookup and $graphLookup on a view.
2016-08-10 20:20:19 -04:00
David Storch
d9bb24e5f5
SERVER-25139 make $graphLookup's cache collation-aware
...
Ensures that comparisons made during graph traversal respect
the collation. Deduplication using _id, however, does not
use the collation, in order to ensure that node identity is
preserved.
2016-08-10 16:53:20 -04:00
Max Hirschhorn
089b61b649
SERVER-25139 Add tests to verify that $lookup respects the collation.
2016-08-04 16:07:58 -04:00
Max Hirschhorn
5149b0f8a5
SERVER-25005 Use Pipeline to execute $lookup and $graphLookup.
...
Replaces the usages of DBDirectClient::query() in DocumentSourceLookUp
and DocumentSourceGraphLookUp to instead parse and execute a Pipeline.
Simplifies the registration process of the "inner" plan execution in an
aggregation pipeline. The DocumentSourceCursor class now owns its
PlanExecutor and the PipelineProxyStage class no longer has a
std::weak_ptr to it. The "inner" plan executor is registered with the
CursorManager of the underlying Collection and will receive invalidation
notifications if a catalog operation occurs.
2016-08-04 12:49:28 -04:00
Max Hirschhorn
bb273eadd4
SERVER-25419 Make the dependency of mongos on aggregation explicit.
2016-08-04 09:16:55 -04:00
Carly Robison
dd60225291
SERVER-23313 add replaceRoot aggregation stage
...
replaceRoot promotes a subdocument to the top level
2016-07-29 10:05:35 -04:00
Sally McNichols
39d63ea21d
SERVER-24152 add $bucketAuto aggregation stage
2016-07-26 17:52:36 -04:00
David Storch
b739dc09fe
SERVER-23349 add collation support to $geoNear agg stage
2016-07-26 13:33:26 -07:00
David Storch
a21039e4bf
SERVER-23349 add integration tests for aggregation stages respecting the collation
2016-07-26 11:28:08 -07:00
David Storch
56555dd1f9
SERVER-23349 add a test for aggregation expressions respecting the collation
2016-07-26 08:10:04 -07:00
David Storch
0c8085729e
SERVER-23349 add tests for $group and accumulators using collation
2016-07-21 17:54:48 -04:00
Charlie Swanson
e420c60e6c
SERVER-23073 Reliably detect concurrent changes to $out collection.
...
A $out stage will write to a temporary collection, and then rename into
the target collection. If the original collection is sharded, has its
options changed, or changes its indexes during processing, the
aggregation should fail.
This change removes any race conditions around detecting these changes.
2016-07-18 18:50:58 -04:00
Charlie Swanson
a8414a21ef
SERVER-25054 Error if aggregation uses text score without text search.
2016-07-14 16:18:39 -04:00
Charlie Swanson
7050c2613b
SERVER-24640 Implement getDependencies for $facet stage.
2016-07-14 16:18:38 -04:00
Geert Bosch
b62dcab903
SERVER-24766 Rename error code 15999 to InvalidPipelineOperator
2016-07-13 13:48:28 -04:00
Benjamin Murphy
45977b4209
SERVER-24714 graphLookup now accepts the restrictSearchWithMatch option.
...
Closes #1098
Signed-off-by: David Storch <david.storch@10gen.com >
2016-07-05 15:16:59 -04:00
Sally McNichols
f3919fcaa8
SERVER-24302 Make "as" option of $filter and $map default to "this"
2016-06-30 14:13:27 -04:00
Charlie Swanson
752eb0f448
SERVER-18966 Add the ability to exclude fields in $project stage
2016-06-24 18:07:36 -04:00
Charlie Swanson
46b4dfbdef
SERVER-23654 Add $facet aggregation stage
2016-06-24 11:51:21 -04:00
Charlie Swanson
20e9b2798d
SERVER-24638 Move command processing from Pipeline to AggregationRequest
2016-06-24 11:51:20 -04:00
Kaloian Manassiev
2477b8c33b
SERVER-22512 Remove unnecessary calls to stopBalancer
2016-06-09 13:13:05 -04:00
Geert Bosch
00ed8f3b27
SERVER-19735: Add support for decimal type in aggregation
2016-06-06 13:22:34 -04:00
Mark Benvenuto
6dcdd23dd3
SERVER-23971 Clang-Format code
2016-05-28 17:55:12 -04:00
David Hows
fee016c605
SERVER-24068 - Disable test server21632.js when running with WiredTiger LSM
2016-05-17 05:42:22 +10:00
James Wahlin
b31ca56158
SERVER-23896 Add ExpressionMod tests for infinite dividend
2016-05-09 09:07:56 -04:00
James Wahlin
0ffad2b98d
SERVER-23896 Additional tests for ExpressionMod
2016-05-09 08:59:46 -04:00
David Storch
34e784dd13
SERVER-23725 Aggregation now supports the graphLookup stage.
...
This commit is identical to a1253a94b8 .
2016-05-04 09:54:45 -04:00
Spencer T Brody
595d7d795f
SERVER-23213 Remove all users of ShardRegistry::kAllRetriableErrors
...
This reverts commit f294d1dcd4 .
2016-05-03 18:57:26 -04:00
Kyle Suarez
f294d1dcd4
Revert "SERVER-23213 Remove all users of ShardRegistry::kAllRetriableErrors"
...
This reverts commit 21cfba12a0 .
2016-05-03 00:01:19 -04:00
Spencer T Brody
21cfba12a0
SERVER-23213 Remove all users of ShardRegistry::kAllRetriableErrors
2016-05-02 18:45:08 -04:00
Max Hirschhorn
6c0f5951e3
Revert "SERVER-23725 Aggregation now supports the graphLookup stage."
...
This reverts commit a1253a94b8 .
2016-04-30 17:30:50 -04:00
Benjamin Murphy
a1253a94b8
SERVER-23725 Aggregation now supports the graphLookup stage.
2016-04-29 17:38:28 -04:00
Benjamin Murphy
7ae631410d
SERVER-8951 Aggregation now supports the indexOfArray, indexOfBytes, and indexOfCP expressions.
2016-04-29 17:17:43 -04:00
Benjamin Murphy
5c3e0d4855
SERVER-6773 Aggregation now supports the split expression.
2016-04-26 11:28:01 -04:00
Benjamin Murphy
223c2a1aa5
SERVER-6146 Aggregation now supports the in expression.
2016-04-21 11:38:43 -04:00
Benjamin Murphy
0dfb47dd67
SERVER-17258 Aggregation now supports the reduce expression.
2016-04-21 11:23:15 -04:00
Benjamin Murphy
77aaa54193
SERVER-10689 Aggregation now supports the switch expression.
2016-04-15 13:03:12 -04:00
Benjamin Murphy
6bd6589e80
SERVER-14670 Aggregation supports strLenCP and strLenBytes.
2016-03-29 15:21:06 -04:00
Charlie Swanson
f23e588c18
SERVER-22881 Expand arrays during $lookup's query.
...
If the value in 'localField' is an array, assume that it corresponds to
multiple entries in the foreign collection. The query to the foreign
collection will use a $in predicate, except when a regex is present, in
which case it will use a series of $eq predicates within an $or.
2016-03-29 15:06:54 -04:00
Jens Fahnenbruck
ea07e34466
SERVER-7695 Add ISO versions of date expressions.
...
Implements expressions for dealing with week as described in the
ISO-8601 standard (https://en.wikipedia.org/wiki/ISO_week_date ).
Also implements the %G, %V, and %u specifiers for $dateToString.
Closes #1068
2016-03-29 12:22:11 -04:00
Benjamin Murphy
60f636afea
SERVER-20163 Aggregation now supports the zip expression.
2016-03-25 11:29:43 -04:00
Benjamin Murphy
5afa97da4c
SERVER-22580 Aggregation now supports substrCP.
2016-03-25 10:37:50 -04:00
Benjamin Murphy
f4bbde02ba
SERVER-4507 Group stages now take advantage of sorted input sequences.
2016-03-24 11:05:32 -04:00
Benjamin Murphy
f40294818c
SERVER-20169 Aggregation now supports the range expressin.
2016-03-24 10:59:06 -04:00
Mike Grundy
1be713cebb
SERVER-23067 Final round of JS linting and formatting
2016-03-18 17:10:31 -04:00
Benjamin Murphy
a40991b77d
SERVER-23029 Added reverseArray expression to aggregation.
2016-03-15 12:24:53 -04:00
Jonathan Abrahams
4ae691e8ed
SERVER-22468 Format JS code with approved style in jstests/
2016-03-09 12:18:14 -05:00
Benjamin Murphy
aee9f7e2a9
SERVER-22093 Aggregation uses a COUNT plan when no fields are needed from input documents.
2016-03-04 10:05:05 -05:00