summaryrefslogtreecommitdiff
path: root/src/mongo/db/pipeline/pipeline.h
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-23473 Add collation parameter to aggregateTess Avitabile2016-05-231-0/+1
|
* SERVER-20224 commands that write support writeConcernJudah Schvimer2016-04-121-0/+5
|
* SERVER-22537 Fix DBDirectClient's OperationContext not getting updated.Max Hirschhorn2016-02-291-0/+22
| | | | | | | | | | | This fixes an issue where the DBDirectClient used by the $lookup stage would have the previous OperationContext and trigger an invalid memory access when sending a getMore request as it unwinds the results. Calling PipelineProxyStage::doDetachFromOperationContext() now causes the DBDirectClient's OperationContext to be set to nullptr, and PipelineProxyStage::doReattachToOperationContext() causes it to be set to the current OperationContext.
* SERVER-19542 Refactored pipeline optimization.Benjamin Murphy2016-02-111-2/+8
|
* SERVER-19095 Prep for $lookUp, add checks for auth and sharded collection(s)James Cohan2015-08-071-6/+13
|
* SERVER-18579: Clang-Format - reformat code, no comment reflowMark Benvenuto2015-06-201-144/+150
|
* SERVER-7656 Execute aggregation command on targeted shard if first stage is ↵Charlie Swanson2015-05-281-1/+6
| | | | exact match on shard key
* SERVER-18383 Remove sharded agg fallback code for 2.4 shardsCharlie Swanson2015-05-111-3/+0
|
* SERVER-13256 Remove intrusive_ptr from pch.hAndrew Morrow2015-01-051-6/+8
|
* SERVER-15019 propagate kill and invalidate for agg cursors to the nested ↵David Storch2014-10-021-1/+1
| | | | PlanExecutor
* SERVER-13256: Remove pch - qualify std in headersMark Benvenuto2014-05-191-5/+5
|
* SERVER-12392: Move cursor/runner cache into Collection lifecycle via ↵Eliot Horowitz2014-01-241-1/+1
| | | | CollectionCursorCache
* SERVER-12180 fix inconsistent use of struct/classMathias Stearn2014-01-211-1/+1
|
* SERVER-8033 Sharded agg should only send needed fields from shards to mongosMathias Stearn2014-01-211-7/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** BEFORE *** > db.foo.aggregate([{$sort: {score:1}}, {$limit: 10}, {$project: {_id: 1}}], {explain:true}) { "splitPipeline" : { "shardsPart" : [ { "$sort" : { "sortKey" : { "score" : 1 }, "limit" : NumberLong(10) } } ], "mergerPart" : [ { "$sort" : { "sortKey" : { "score" : 1 }, "mergePresorted" : true, "limit" : NumberLong(10) } }, { "$project" : { "_id" : true } } ] }, "shards" : { "shard0000" : { "host" : "localhost:30001", "stages" : [ { "$cursor" : { "query" : { }, "indexOnly" : false, "cursorType" : "BasicCursor" } }, { "$sort" : { "sortKey" : { "score" : 1 }, "limit" : NumberLong(10) } } ] } }, "ok" : 1 } *** AFTER *** > db.foo.aggregate([{$sort: {score:1}}, {$limit: 10}, {$project: {_id: 1}}], {explain:true}) { "splitPipeline" : { "shardsPart" : [ { "$sort" : { "sortKey" : { "score" : 1 }, "limit" : NumberLong(10) } }, { "$project" : { "score" : true, "_id" : true } } ], "mergerPart" : [ { "$sort" : { "sortKey" : { "score" : 1 }, "mergePresorted" : true, "limit" : NumberLong(10) } }, { "$project" : { "_id" : true } } ] }, "shards" : { "shard0000" : { "host" : "localhost:30001", "stages" : [ { "$cursor" : { "query" : { }, "fields" : { "score" : 1, "_id" : 1 }, "indexOnly" : false, "cursorType" : "BasicCursor" } }, { "$sort" : { "sortKey" : { "score" : 1 }, "limit" : NumberLong(10) } }, { "$project" : { "score" : true, "_id" : true } } ] } }, "ok" : 1 }
* Pipeline::parseCommand doesn't need non-const BSONObj refMathias Stearn2013-11-121-7/+8
|
* Split up Pipeline optimizations into separate functionsMathias Stearn2013-10-231-1/+12
|
* Clean up Pipeline::getInitialQuery() and DocSourceMatch::toMatcherBson()Mathias Stearn2013-10-211-8/+3
| | | | | Both now return a BSONObj rather than appending to a passed-in builder. DocumentSourceMatch::toMatcherBson become getQuery().
* SERVER-1105 Use ResourcePattern type when identifying the resource component ↵Andy Schwerin2013-09-231-1/+3
| | | | | | | | | of required privileges. This patch has two principal components. First, it changes the interface to Privilege and AuthorizationSession to use ResourcePattern in place of std::string for identifying resources. Second, it examines all call sites of the authorization session interface in commands and other code to ensure that the correct resource requirements are conveyed to the authorization_session.
* SERVER-4504 explain for aggregationMathias Stearn2013-09-201-52/+7
| | | | | | | | | This is just the infrastucture change. Each DocumentSource will need to have it's serialize()/serializeToArray() implementation examined and improved. Related tickets: SERVER-6140 A specific failure in the old impl of explain.
* Remove Pipeline::collectionName and getter.Mathias Stearn2013-09-201-12/+0
| | | | It is replaced by ExpressionContext::ns.
* Remove fake split-pipeline mode from aggregationMathias Stearn2013-09-201-22/+0
| | | | | | It was a bad idea and is only used by the disabled test for explain. When complete, the explain test will use an actual sharded cluster rather than a fake one.
* SERVER-8886 Add OpenSSL exception to files in src/mongo/dbIan Whalen2013-09-061-0/+12
|
* serialize to replace toBson in document sources and pipelinematt dannenberg2013-08-281-7/+6
|
* Fix mismatched class/structMathias Stearn2013-08-091-1/+1
|
* Remove unnecessarily defined constructors and destructors from aggregationMathias Stearn2013-08-091-2/+0
|
* SERVER-10097 sharded $outMathias Stearn2013-08-081-0/+5
| | | | | | Note that all sharded aggregation tests now go through the "merge-on-mongod" codepath now rather than the "merge-in-mongos" codepath.
* SERVER-3253 Unsharded $outMathias Stearn2013-07-261-0/+6
|
* Clean up #includes to conform with coding standardDan Pasette2013-07-241-2/+2
|
* SERVER-5932 Aggregation returning a cursorMathias Stearn2013-07-101-3/+9
| | | | | | related tickets: SERVER-8261 System for commands to return cursors SERVER-10165 aggregate() helper should return cursor
* modest ( ~ !10% ) compile time speedup by some small header cleanupEliot Horowitz2013-06-231-2/+4
|
* Adjusted file mod's.Alberto Lerner2012-12-181-0/+0
|
* Make handling of pipeline stages more saneMathias Stearn2012-12-141-12/+8
| | | | | | | | | Major Changes: * Pipeline::sourceVector is now a deque and renamed to "sources" * Initial source is now always sources.front() rather than being passed to run() * Unified explain and non-explain paths in pipeline_command.cpp since they became the same This is part of prep for SERVER-7781 ($geoNear pipeline stage)
* pch headerSiddharth Singh2012-08-061-1/+1
|
* Move remaining aggregation files from commands directory to pipelineMathias Stearn2012-08-021-0/+225
pipeline_command.cpp remains in commands because it contains the actual command