summaryrefslogtreecommitdiff
path: root/src/mongo/dbtests/query_stage_ixscan.cpp
Commit message (Collapse)AuthorAgeFilesLines
* SERVER-43367 unittest framework refactor/fixesBilly Donahue2019-10-021-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Segregate old-style dbtests into their own Suite initialization system: OldStyleSuiteSpecification. This is where the funky deprecated features can live on without interfering with the Suite API. It also gives us a searchable base class to identify them in the future. OldStyleSuite has `setupTests()` and an `add<T>()` that Suite does not have. Suite API can shrink when it doesn't have to support these dbtest adaptor features. Suite only needs non-template `add(name, callback)`. - Add OldStyleSuiteInitializer to some dbtests that were missing it! These didn't use SuiteInstance to register themselves and were incorrect. They would self register, resulting in _allSuites() holding a std::shared_ptr to a static-duration Suite object! - Change `getSuite()` to return `Suite&` instead of `Suite*`. - No more "self-registering" in Suite constructor. Registration must be done as a separate post-construction step. This removes some unusual lifetime management code and is easier to document. Suite::getSuite(name) is the only way to make a Suite, and it does the make_shared and registration calls with a pseudo-private ConstructorEnable idiom. - Suite->run() returns std::unique_ptr<Result> instead of raw `Result*`. It's virtual to support OldStyleSuite behavior. - Suite._ran does nothing. Removed. - Result.cur does nothing. Removed. - Switch to pass-by-value and std::move for most ctor args. - Add explicit on 1-arg ctors. - Get rid of TestHolder. It's just a 2-field struct. - use fmt instead of snprintf - TEST and TEST_F macros: generate TEST_TYPE once. - TEST and TEST_F macros: inline the _agent variable. - Mark _doRun as `override`. - Terminology: replace CASE_NAME with SUITE_NAME. - rename DeathTestImpl -> DeathTestBase - move getDeathTestPattern into the test as a static member function - refactor out some repetition from the comparator decl macros - use if-constexpr and diamond relops to clean up the ComparisonAssertion class. - dbtests: conditionally skip some add<T> calls - further dedup (DEATH_)TEST(_F) macros
* SERVER-41696 Remove the 'ns' field from index specsGregory Wlodarek2019-07-291-3/+2
|
* SERVER-41772 Apply clang-format 7.0.1 to the codebaseclang-format-7.0.12019-07-271-2/+1
|
* SERVER-41071 Replace NULL and 0 with nullptrA. Jesse Jiryu Davis2019-06-141-3/+5
|
* SERVER-40724 Change namespace arguments to use NamespaceStringGeert Bosch2019-04-261-2/+5
|
* 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-38316 Consolidate PlanExecutor::DEAD and PlanExecutor::FAILUREPawel Terlecki2019-01-301-1/+0
| | | | | Replaced PlanStage::DEAD with PlanStage::FAILURE. In the subsequent commit, PlanExecutor::DEAD will be taken care of in the next commit
* SERVER-38091 IndexCatalog iterators and accessors should return const entriesLouis Williams2018-12-191-2/+2
|
* SERVER-37447 Introduce RequiresIndexStage and use for IXSCAN.David Storch2018-11-271-10/+10
|
* SERVER-37651 Update header files with new licenseRamon Fernandez2018-10-221-8/+10
|
* SERVER-35500 Implement special bounds generation for allPaths indexesBernard Gorman2018-08-101-4/+2
|
* SERVER-35115 Separate dbclientinterface.h into several parts, one per class.Henrik Edin2018-06-291-1/+0
|
* SERVER-30353 Create an index observer to notify us of changes made to index ↵Gregory Wlodarek2017-08-091-0/+1
| | | | and document keys
* SERVER-28912 Thread statement id from batched insert command oplog entryRandolph Tan2017-07-121-1/+1
|
* SERVER-27244 Status usage compile-time facilities.ADAM David Alan Martin2017-06-181-1/+1
| | | | | | | | | | | | | | | | | 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-22541 Refactor RAII locking helpers.Charlie Swanson2017-03-151-7/+3
| | | | | | | | | 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-27938 Rename all OperationContext variables to opCtxMaria van Keulen2017-03-071-14/+14
| | | | | | 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-23103 Move assembleResposne to its own libraryAndrew Morrow2016-12-141-0/+1
|
* SERVER-26033 Allow simple range to exclude start keyJudah Schvimer2016-09-151-1/+1
|
* 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-24508 BSONObj::ComparatorInterfaceDavid Storch2016-08-181-10/+10
| | | | | | | | | | | 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-24239 Allow creation of indexes with the same key pattern.David Hatch2016-07-281-6/+8
|
* SERVER-23271 Add keysInserted and keysDeleted metrics for CRUD opsJames Wahlin2016-04-211-1/+2
|
* Revert "SERVER-23271 Add keysInserted and keysDeleted metrics for CRUD ops"Benety Goh2016-04-211-2/+1
| | | | This reverts commit 6bbaee174447ee1c9177c72bdd07f050ab07e901.
* SERVER-23271 Add keysInserted and keysDeleted metrics for CRUD opsJames Wahlin2016-04-211-1/+2
|
* SERVER-23779 Replace direct instantiation of OperationContextImpl with ↵Andy Schwerin2016-04-201-4/+3
| | | | | | | 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-3/+4
| | | | | | with cc().makeOperationContext()." This reverts commit 0ab34aa7b9c3c48ea6cf17888620fca455284d35.
* SERVER-23779 Replace direct instantiation of OperationContextImpl with ↵Andy Schwerin2016-04-181-4/+3
| | | | | | | cc().makeOperationContext(). Also, make OperationContextImpl's constructor private so that it can only be constructed via a Client.
* SERVER-18826 Rename WorkingSet State Names from LOC to RIDJames Wahlin2016-02-051-9/+9
| | | | | | Also renamed: * WorkingSetMember::hasLoc() -> WorkingSetMember::hasRecordId * WorkingSetMember::loc -> WorkingSetMember::recordId
* SERVER-19564: Drop unused recordID return from insertDocumentMartin Bligh2015-09-091-1/+1
| | | | Precursor to writev
* SERVER-19564: revertMartin Bligh2015-08-081-1/+1
|
* SERVER-19564: Drop unused recordID return from insertDocumentMartin Bligh2015-08-081-1/+1
| | | | Precursor to writev
* SERVER-17364 Don't stash RecoveryUnits across getMoresMathias Stearn2015-07-161-4/+4
| | | | | | | We now tell PlanExecutors to detach from their OperationContexts and to shed all storage engine resources before stashing the ClientCursor. This is a heavier weight operation than a normal save/restoreState which is no longer allowed to change the OperationContext.
* SERVER-18961 avoid iterating the entire working set when preparing for a ↵David Storch2015-07-011-9/+9
| | | | | | | WiredTiger snapshot change Improves performance for query plans with a blocking stage when using the WiredTiger storage engine. In particular, full text search and geoNear queries should benefit.
* SERVER-18579: Clang-Format - reformat code, no comment reflowMark Benvenuto2015-06-201-291/+281
|
* SERVER-17308 Replace boost::scoped_ptr<T> with std::unique_ptr<T>Andrew Morrow2015-06-101-4/+4
|
* SERVER-17309 Replace std::auto_ptr<T> with std::unique_ptr<T>Andrew Morrow2015-06-101-1/+1
|
* SERVER-17635 Improve SortedDataInterface::Cursor APIMathias Stearn2015-04-091-8/+18
| | | | | | | | Major changes: * Implementation now responsible for simple end point checking. * No way to ask for current position. Relocating methods now return position. * Simplified seeking methods so they have clear uses. * Callers can use saveUnpositioned to indicate they don't care about position.
* SERVER-17817 Move replication-specific data from Client into ReplClientInfo ↵Andy Schwerin2015-04-061-0/+2
| | | | decoration.
* SERVER-17758 Move AutoGet* and Client::*Context to their own file.Andy Schwerin2015-03-271-1/+2
| | | | | The new file is mongo/db/db_raii.h. Also, Client::Context is now OldClientContext and Client::WriteContext is OldClientWriteContext.
* SERVER-17062 Make query execution handle WriteConflictExceptions where possibleMathias Stearn2015-02-131-1/+5
|
* SERVER-16437 fix bug in IndexScan::restoreState() for the optimized end checkerDavid Storch2015-01-161-3/+191
|
* SERVER-16429 Add ScopedTransactions to places which were missing itKaloian Manassiev2014-12-101-5/+11
|
* SERVER-15958 initialize IndexScanStats fields isMultiKey and indexName on ↵David Storch2014-11-121-0/+123
IndexScan construction