summaryrefslogtreecommitdiff
path: root/src/mongo/dbtests/querytests.cpp
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-32506 OSX Mobile SE variant: Tag tests to skip on mobile SESulabh Mahajan2018-01-181-0/+6
|
* SERVER-29843 Make oplog queries use eq, gt, and gte predicates on ts for ↵Tess Avitabile2017-11-071-48/+63
| | | | scan bounds
* SERVER-30580 Eliminate UserException and MsgAssertionException typesMathias Stearn2017-08-161-6/+6
| | | | All users were converted to just use AssertionException.
* SERVER-28509 DBClientCursor now uses read commandsMathias Stearn2017-07-261-32/+24
|
* SERVER-28912 Thread statement id from batched insert command oplog entryRandolph Tan2017-07-121-2/+4
|
* SERVER-27699 Capture actual error from getExecutorNatalia Jacobowitz2017-07-061-3/+2
|
* SERVER-27244 Status usage compile-time facilities.ADAM David Alan Martin2017-06-181-4/+4
| | | | | | | | | | | | | | | | | There are numerous places in the codebase where `mongo::Status` or `mongo::StatusWith< T >` objects are returned and never checked. Many of these are innocuous, but many of them are potentially severe bugs. This change introduces facilities to permit compile-time warning of unchecked `Status` and `StatusWith` usage on clang compilers. It introduces an `ignore` function which is useful to state that a specific "ignored status" case was intentional. It not presently an error, in clang builds, to forget to check a `Status` -- this will come in a later commit. This also introduces a `transitional_ignore` function, which allows for easy continual auditing of the codebase for current "whitelisted" unchecked-status instances. All present "ignored status" cases have been marked `transitional_ignore`.
* SERVER-21754 Partition CursorManager's structuresCharlie Swanson2017-05-261-8/+3
|
* SERVER-28327 Revamp cursor timeout logic.Charlie Swanson2017-05-031-168/+0
| | | | | | Instead of tracking the number of idle milliseconds, each ClientCursor tracks its last time of use. This also resolves related issues SERVER-28328 and SERVER-19892.
* SERVER-25694 Eliminate race in PlanExecutor cleanup.Charlie Swanson2017-04-131-10/+20
| | | | | | | | | | | 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-28543 Add OperationContext as an argument to getCollectionMaria van Keulen2017-04-061-4/+4
|
* SERVER-27691 Make OperationContext::setKillAllOperations interrupt all ↵Kaloian Manassiev2017-04-051-14/+10
| | | | operations
* SERVER-9609 Ensure users can only call getMore on cursors they createdTess Avitabile2017-03-221-3/+3
|
* Revert "SERVER-9609 Ensure users can only call getMore on cursors they created"Tess Avitabile2017-03-211-3/+3
| | | | This reverts commit 9e7974e4b6e2b3fe5e7741dce6549624113af196.
* SERVER-9609 Ensure users can only call getMore on cursors they createdTess Avitabile2017-03-171-3/+3
|
* SERVER-22541 Manage aggregation cursors on global cursor manager.Charlie Swanson2017-03-151-4/+111
| | | | | | Moves registration of aggregation cursors to the global cursor manager. This simplifies the logic for acquiring locks and resolving view namespaces within the getMore and killCursors commands.
* SERVER-22541 Refactor RAII locking helpers.Charlie Swanson2017-03-151-19/+11
| | | | | | | | | Removes the class 'ScopedTransaction' and moves the responsibility of abandoning the snapshot onto the GlobalLock class. Also renames the AutoGetCollectionForRead class to AutoGetCollectionForReadCommand, and adds a new AutoGetCollectionForRead class. Unlike AutoGetCollectionForReadCommand, this new class will not update the namespace on the CurrentOp object, nor will it add an entry to Top.
* SERVER-27987 Create and persist UUIDs for newly created collectionsGeert Bosch2017-03-081-0/+1
|
* SERVER-27938 Rename all OperationContext variables to opCtxMaria van Keulen2017-03-071-84/+89
| | | | | | This commit is an automated rename of all whole word instances of txn, _txn, and txnPtr to opCtx, _opCtx, and opCtxPtr, respectively in all .cpp and .h files in src/mongo.
* SERVER-27746: Integrate LogicalClock with oplogMisha Tyulenev2017-02-151-7/+8
|
* SERVER-27828: Pass ServiceContext to oplog and ReplicationCoordinator ↵Misha Tyulenev2017-02-081-3/+6
| | | | methods that will use LogicalClock
* SERVER-27306 Remove AutoGetCollection methods with std::string namespaceJames Wahlin2016-12-191-4/+5
|
* SERVER-27065 cleanup ClientCursor, ClientCursorPin, and CursorManagerDavid Storch2016-12-021-8/+12
| | | | | | | | | | | - Makes cursors come into existence pinned. This fixes a race condition in which a cursor could time out in between being constructed/retrieved and being pinned. - Reduces the public interface of ClientCursor. In particular, makes ClientCursor's constructor and destructor private. - Cleans up header file comments in order to more clearly indicate expected usage.
* SERVER-27233 fix namespaces to de-dup symbol mongo::myallMatt Cotter2016-12-011-1/+1
|
* SERVER-26334 fix mongos handling of ntoreturn:1Charlie Swanson2016-09-281-26/+0
|
* SERVER-24033 Write full index spec in oplog entry for index creation.Max Hirschhorn2016-09-141-1/+7
| | | | | | | | | | | | | | | This ensures that the index version (aka the "v" field) is always present in the oplog entry when creating indexes on a 3.4 primary. We can therefore assume that if the "v" field isn't present in the corresponding oplog entry, then a v=1 index should be built. Changes MultiBlockIndex::init() to return the index specifications that were actually created. The "repairDatabase", "compact", "copydb", and "cloneCollection" commands no longer automatically upgrade the index version to the current default version. Instead, the only command that does so is the "reIndex" command.
* SERVER-25159 Default BSON validation version should depend on ↵Tess Avitabile2016-09-021-1/+1
| | | | admin.system.version
* SERVER-24508 BSONObj::ComparatorInterfaceDavid Storch2016-08-181-6/+6
| | | | | | | | | | | BSONObj instances should now be compared via the comparator interface's evaluate() method. This preferred over using BSONObj::woCompare() directly. If the comparison doesn't require any database semantics (e.g. there is no collation), there is a global instance of the SimpleBSONObjComparator which should be used for BSONObj comparisons. If the comparison requires special semantics, then callers must instantiate their own comparator object.
* SERVER-24118 Rename LiteParsedQuery to QueryRequest.David Hatch2016-06-031-1/+0
|
* SERVER-23971 Clang-Format codeMark Benvenuto2016-05-281-14/+43
|
* SERVER-23271 Add keysInserted and keysDeleted metrics for CRUD opsJames Wahlin2016-04-211-2/+3
|
* Revert "SERVER-23271 Add keysInserted and keysDeleted metrics for CRUD ops"Benety Goh2016-04-211-3/+2
| | | | This reverts commit 6bbaee174447ee1c9177c72bdd07f050ab07e901.
* SERVER-23271 Add keysInserted and keysDeleted metrics for CRUD opsJames Wahlin2016-04-211-2/+3
|
* SERVER-23779 Replace direct instantiation of OperationContextImpl with ↵Andy Schwerin2016-04-201-5/+7
| | | | | | | cc().makeOperationContext(). Also, make OperationContextImpl's constructor private so that it can only be constructed via a Client.
* Revert "SERVER-23779 Replace direct instantiation of OperationContextImpl ↵Eric Milkie2016-04-191-7/+5
| | | | | | with cc().makeOperationContext()." This reverts commit 0ab34aa7b9c3c48ea6cf17888620fca455284d35.
* SERVER-23779 Replace direct instantiation of OperationContextImpl with ↵Andy Schwerin2016-04-181-5/+7
| | | | | | | cc().makeOperationContext(). Also, make OperationContextImpl's constructor private so that it can only be constructed via a Client.
* SERVER-22344 Error if OplogReplay cursor requested on non-capped collectionTess Avitabile2016-02-171-0/+15
|
* SERVER-5811 implement the killCursors command for mongodDavid Storch2015-06-231-1/+1
| | | | Implementing the killCursors command in mongos and the mongo shell is further work.
* SERVER-18579: Clang-Format - reformat code, no comment reflowMark Benvenuto2015-06-201-1474/+1586
|
* SERVER-18292 support OP_COMMAND in commands executed using a DBClientCursorAdam Midvidy2015-06-161-9/+4
|
* SERVER-17309 Replace std::auto_ptr<T> with std::unique_ptr<T>Andrew Morrow2015-06-101-29/+29
|
* SERVER-16444 New API for navigating RecordStoresMathias Stearn2015-06-091-4/+19
|
* SERVER-2454 Improve PlanExecutor::DEAD handlingJames Wahlin2015-06-091-21/+4
|
* SERVER-18277 Stronger locking rules for CurOp and OpDebug.Andy Schwerin2015-06-051-2/+1
|
* Reapply "SERVER-14995 Move operation id, lockState and client fields to ↵Andy Schwerin2015-06-021-1/+0
| | | | | | OperationContext." This reverts commit e181ea38af737ef7aaf5f8228f870d8c7149b2bb.
* Revert "SERVER-14995 Move operation id, lockState and client fields to ↵Spencer T Brody2015-05-291-0/+1
| | | | | | OperationContext." This reverts commit 4ea38c308da292f43e29d32b1b53b7324db0bafe.
* SERVER-14995 Move operation id, lockState and client fields to OperationContext.Andy Schwerin2015-05-291-1/+0
| | | | | | | | | | | | | They have been moved from OperationContextImpl. Furthermore, the CurOp stack is now attached to OperationContext, instead of Client. With this change, an operation's lifetime is governed by the lifetime of an OperationContext object. The "_active" field of CurOp is therefore no longer meaingful. This required fixing the lifetime of OperationContext in a few places. A future change will adjust operation lifetime timing to time the lifetime of the OperationContext object, as well.
* SERVER-18277/SERVER-18482 Remove "_remote" field from CurOp.Andy Schwerin2015-05-221-2/+1
|
* SERVER-18277 Prefer getting CurOp via the OperationContext rather than the ↵Andy Schwerin2015-05-221-1/+1
| | | | | | | | | Client. Eventually, the CurOp should be a part of the OperationContext. Presently, the only thing that prevents our maintaining that illusion is that ServiceContextMongoD expects to be able to extract the CurOp for each existing Client object, but there is no way to enumerate the OperationContexts for a Client.
* SERVER-17577 query planner now makes use of separate limit and batchSize ↵David Storch2015-05-211-4/+1
| | | | fields in find command