Commit Graph

147 Commits

Author SHA1 Message Date
Anton Korshunov
57c127b904 SERVER-40439 Add merge support for whenNotMatched: discard 2019-05-17 21:37:17 +01:00
A. Jesse Jiryu Davis
0ed0b97e6f SERVER-41181 Fix sharding tests for hostname normalization 2019-05-17 16:28:27 -04:00
James Wahlin
17fe1b7109 SERVER-40240 Add new $unset aggregation stage 2019-05-17 11:16:24 -04:00
Charlie Swanson
01d37d3ce4 SERVER-41201 Rename test to reflect new coverage 2019-05-17 10:42:10 -04:00
Charlie Swanson
66e7df65d0 SERVER-41201 Add replacement for "withEachOutMode" 2019-05-17 10:36:51 -04:00
Charlie Swanson
dfedea7a2a SERVER-40239 New alias: $replaceWith => $replaceRoot 2019-05-15 12:17:39 -04:00
Anton Korshunov
089dd83af4 SERVER-40438 Add merge support for whenNotMatched: fail 2019-05-14 23:19:33 +01:00
Anton Korshunov
dde091c079 SERVER-40431 Add merge support for whenMatched: pipeline 2019-05-13 21:40:17 +01:00
Anton Korshunov
a25226e009 SERVER-40440 Add merge support for whenMatched: 'keepExisting' 2019-05-06 21:20:41 +01:00
Anton Korshunov
634bf7b2e7 SERVER-40430 Add merge support for whenMatched: merge 2019-05-03 08:51:37 +01:00
Anton Korshunov
fc6c65c0d4 SERVER-40429 Add merge stage to write output to existing collection 2019-05-02 17:03:31 +01:00
Anton Korshunov
d47bbc343a SERVER-24860 Optimize away entire pipeline if it can be answered using a query 2019-04-03 12:19:22 +01:00
Max Hirschhorn
9ad8d6335f SERVER-40076 Tag JS tests with reason they're unable to run in Atlas.
There are likely more JavaScript tests which have been added since
r3.6.9 that still need to be tagged.

(cherry picked from commit 05ec08fa62)
2019-03-11 18:17:29 -04:00
Charlie Swanson
f1da8170c1 SERVER-38360 Prevent $out writing to ns read from in the same pipeline
This restriction only applies to $out with modes "insertDocuments" and
"replaceDocuments".
2019-02-14 16:54:47 -05:00
Charlie Swanson
87194fbe0c SERVER-38311 Change out merging strategy
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.
2019-02-13 07:30:10 -05:00
Ian Boros
c3f2bef808 SERVER-39269 flag gate sharded $lookup 2019-02-07 18:41:36 -05:00
Martin Neupauer
a257327cc3 SERVER-32666 Allow $graphLookup against a sharded collection to execute on mongos 2019-01-30 17:57:26 -05:00
Jacob Evans
41557fac17 SERVER-38695 Make QuerySolutionNode subclasses for projection fast-paths 2019-01-29 13:53:10 -05:00
James Wahlin
dfd854a688 SERVER-38688 Abandon $lookup cache when not local 2019-01-22 16:47:58 -05:00
Brigitte Lamarche
21e65b332e SERVER-38716 fix $geoNear and $text within $lookup sub-pipeline 2019-01-17 15:31:55 -05:00
Charlie Swanson
97821dfa13 Revert " SERVER-38311 Adjust $out merging strategy"
This reverts commit 0cb2195939.
2019-01-16 20:15:37 -05:00
Charlie Swanson
0cb2195939 SERVER-38311 Adjust $out merging strategy 2019-01-16 10:09:59 -05:00
Brigitte Lamarche
bb9114dc71 SERVER-38362 Prevent $out stage within $lookup 2019-01-03 15:13:57 -05:00
Henrik Edin
6b641e8665 SERVER-38249 Implement stdx unordered_map and unordered_set as absl node hash map/set.
Remove stdx::unordered_multimap and multiset.

Custom hashers to stdx::unordered_map are not trusted by default, we
will rehash the produced hash with absl again to ensure we have a good
hash function.
2018-12-20 09:18:05 -05:00
James Wahlin
056d61676f SERVER-32308 Support for $lookup to execute on mongos against a sharded foreign collection 2018-12-12 14:41:24 -05:00
David Storch
8c3877860e Fix error code conflict. 2018-12-07 16:22:41 -05:00
David Storch
7000ad6f39 SERVER-38063 Fail cleanly on execution-level explain of $out pipeline. 2018-12-07 16:14:56 -05:00
Charlie Swanson
67e98183b1 SERVER-38349 Disallow exchange passed to mongos 2018-12-07 16:07:37 -05:00
Devin Hilly
1862b00862 SERVER-31098 Wrong ns in system.profile for aggregation query 2018-11-20 11:24:41 -05:00
Devin Hilly
95bfbe8166 SERVER-37378 Prevent $out to the same namespace as the aggregation for the new modes 2018-11-07 19:50:34 -05:00
Nick Zolnierz
c929036416 SERVER-37191 writeConcern for $out 2018-10-31 13:20:36 -04:00
Nick Zolnierz
267bbff2d9 SERVER-37229: Switch to unordered write ops ini $out 2018-10-12 11:58:42 -04:00
Ian Boros
627d6027b1 SERVER-37459 special case for $group with $$ROOT or $$CURRENT 2018-10-09 15:52:46 -04:00
Martin Neupauer
93e66d955e SERVER-37076 Aggregation exchange partitioning does not work correctly for dotted keys. 2018-10-08 14:43:32 -04:00
Martin Neupauer
f9ae642a5c SERVER-36113 Add ability to perform $exchange when shard key is hashed 2018-10-01 14:24:42 -04:00
Martin Neupauer
b6324b30ca SERVER-36279 Change the explain format for sharded aggregations to accomodate $exchange 2018-09-26 11:51:04 -04:00
Nick Zolnierz
3ef020ad55 SERVER-36047: Enforce existence of unique index containing fields of $out uniqueKey for sharded collections 2018-09-21 14:35:39 -04:00
Martin Neupauer
fffa22c254 SERVER-35899 Have mongos produce an aggregation plan that correctly uses an $exchange. 2018-09-19 15:26:36 -04:00
Nick Zolnierz
b0f2a52bd8 SERVER-36081: Auth tests for $out to a foreign database and bypassDocumentValidation 2018-09-12 13:37:11 -04:00
Kyle Suarez
602bc97e78 SERVER-36367 validation for $out "uniqueKey" 2018-09-11 15:35:22 -04:00
Kyle Suarez
b46de3f6c0 SERVER-36100 generate _id for $out uniqueKey if not present
If the _id field is part of the $out "uniqueKey" but is not present in
the document at the time of write, the $out stage will generate it
automatically.

We won't generate an _id if if isn't part of the "uniqueKey" so that
DocumentSourceOutInPlaceReplace won't use it as part of the update.
2018-08-30 10:45:29 -04:00
Nick Zolnierz
aa36a9e8ad SERVER-36081: Write auth tests for $out and bypassDocumentValidation 2018-08-29 16:01:52 -04:00
Kyle Suarez
15d627c3b7 SERVER-13201 support $out to foreign database
Allows $out to write to a database foreign to the aggregation namespace
when the mode is "insertDocuments" or "replaceDocuments"
2018-08-28 11:00:26 -04:00
Charlie Swanson
4422204cd2 SERVER-36424 Enforce uniqueKey is unique enough 2018-08-27 17:45:59 -04:00
Nick Zolnierz
14c5360236 SERVER-36667: Add ability to have a mixture of sharded and unsharded foreign namespaces in an aggregation 2018-08-21 10:32:03 -04:00
Nick Zolnierz
6c2523f7d8 SERVER-36715: Pushing $sort stage to query system can leave pipeline in an unstitched state 2018-08-20 12:51:39 -04:00
Nick Zolnierz
2e69710b5b SERVER-35895: Add ability for $out to write to remote hosts 2018-08-08 09:49:15 -04:00
Nick Zolnierz
afbe688f0f SERVER-35896: Support 'replaceDocuments' mode in $out 2018-08-02 12:23:03 -04:00
Nick Zolnierz
2471e2bb65 SERVER-36286: Rename options for $out 2018-07-26 12:14:00 -04:00
Nick Zolnierz
9d31d0caa1 SERVER-35897: Add support for $out to append to existing collection 2018-07-24 13:40:25 -04:00