#include <queryoptimizer.h>
Public Member Functions | |
| int | direction () const |
| bool | exactKeyMatch () const |
| shared_ptr< FieldRangeVector > | frv () const |
| bool | indexed () const |
| BSONObj | indexKey () const |
| bool | isMultiKey () const |
| shared_ptr< Cursor > | newCursor (const DiskLoc &startLoc=DiskLoc(), int numWanted=0) const |
| shared_ptr< Cursor > | newReverseCursor () const |
| const char * | ns () const |
| NamespaceDetails * | nsd () const |
| bool | optimal () const |
| shared_ptr< FieldRangeVector > | originalFrv () const |
| BSONObj | originalQuery () const |
| QueryPlan (NamespaceDetails *d, int idxNo, const FieldRangeSet &fbs, const FieldRangeSet &originalFrs, const BSONObj &originalQuery, const BSONObj &order, const BSONObj &startKey=BSONObj(), const BSONObj &endKey=BSONObj(), string special="") | |
| const FieldRange & | range (const char *fieldName) const |
| void | registerSelf (long long nScanned) const |
| bool | scanAndOrderRequired () const |
| BSONObj | simplifiedQuery (const BSONObj &fields=BSONObj()) const |
| bool | unhelpful () const |
| bool | willScanTable () const |
Private Attributes | |
| NamespaceDetails * | _d |
| int | _direction |
| BSONObj | _endKey |
| bool | _endKeyInclusive |
| bool | _exactKeyMatch |
| const FieldRangeSet & | _fbs |
| shared_ptr< FieldRangeVector > | _frv |
| int | _idxNo |
| const IndexDetails * | _index |
| bool | _optimal |
| const BSONObj & | _order |
| shared_ptr< FieldRangeVector > | _originalFrv |
| const BSONObj & | _originalQuery |
| bool | _scanAndOrderRequired |
| string | _special |
| BSONObj | _startKey |
| bool | _startOrEndSpec |
| IndexType * | _type |
| bool | _unhelpful |
Definition at line 32 of file queryoptimizer.h.
| mongo::QueryPlan::QueryPlan | ( | NamespaceDetails * | d, | |
| int | idxNo, | |||
| const FieldRangeSet & | fbs, | |||
| const FieldRangeSet & | originalFrs, | |||
| const BSONObj & | originalQuery, | |||
| const BSONObj & | order, | |||
| const BSONObj & | startKey = BSONObj(), |
|||
| const BSONObj & | endKey = BSONObj(), |
|||
| string | special = "" | |||
| ) |
| int mongo::QueryPlan::direction | ( | ) | const [inline] |
Definition at line 56 of file queryoptimizer.h.
| bool mongo::QueryPlan::exactKeyMatch | ( | ) | const [inline] |
Definition at line 52 of file queryoptimizer.h.
| shared_ptr< FieldRangeVector > mongo::QueryPlan::frv | ( | ) | const [inline] |
Definition at line 70 of file queryoptimizer.h.
| bool mongo::QueryPlan::indexed | ( | ) | const [inline] |
Definition at line 60 of file queryoptimizer.h.
| BSONObj mongo::QueryPlan::indexKey | ( | ) | const |
| bool mongo::QueryPlan::isMultiKey | ( | ) | const |
| shared_ptr<Cursor> mongo::QueryPlan::newCursor | ( | const DiskLoc & | startLoc = DiskLoc(), |
|
| int | numWanted = 0 | |||
| ) | const |
| shared_ptr<Cursor> mongo::QueryPlan::newReverseCursor | ( | ) | const |
| const char* mongo::QueryPlan::ns | ( | ) | const [inline] |
Definition at line 62 of file queryoptimizer.h.
| NamespaceDetails* mongo::QueryPlan::nsd | ( | ) | const [inline] |
Definition at line 63 of file queryoptimizer.h.
| bool mongo::QueryPlan::optimal | ( | ) | const [inline] |
Definition at line 46 of file queryoptimizer.h.
| shared_ptr< FieldRangeVector > mongo::QueryPlan::originalFrv | ( | ) | const [inline] |
Definition at line 68 of file queryoptimizer.h.
| BSONObj mongo::QueryPlan::originalQuery | ( | ) | const [inline] |
Definition at line 64 of file queryoptimizer.h.
| const FieldRange& mongo::QueryPlan::range | ( | const char * | fieldName | ) | const [inline] |
Definition at line 66 of file queryoptimizer.h.
| void mongo::QueryPlan::registerSelf | ( | long long | nScanned | ) | const |
| bool mongo::QueryPlan::scanAndOrderRequired | ( | ) | const [inline] |
Definition at line 48 of file queryoptimizer.h.
Definition at line 65 of file queryoptimizer.h.
| bool mongo::QueryPlan::unhelpful | ( | ) | const [inline] |
Definition at line 55 of file queryoptimizer.h.
| bool mongo::QueryPlan::willScanTable | ( | ) | const [inline] |
Definition at line 61 of file queryoptimizer.h.
NamespaceDetails* mongo::QueryPlan::_d [private] |
Definition at line 74 of file queryoptimizer.h.
int mongo::QueryPlan::_direction [private] |
Definition at line 83 of file queryoptimizer.h.
BSONObj mongo::QueryPlan::_endKey [private] |
Definition at line 87 of file queryoptimizer.h.
bool mongo::QueryPlan::_endKeyInclusive [private] |
Definition at line 88 of file queryoptimizer.h.
bool mongo::QueryPlan::_exactKeyMatch [private] |
Definition at line 82 of file queryoptimizer.h.
const FieldRangeSet& mongo::QueryPlan::_fbs [private] |
Definition at line 76 of file queryoptimizer.h.
shared_ptr< FieldRangeVector > mongo::QueryPlan::_frv [private] |
Definition at line 84 of file queryoptimizer.h.
int mongo::QueryPlan::_idxNo [private] |
Definition at line 75 of file queryoptimizer.h.
const IndexDetails* mongo::QueryPlan::_index [private] |
Definition at line 79 of file queryoptimizer.h.
bool mongo::QueryPlan::_optimal [private] |
Definition at line 80 of file queryoptimizer.h.
const BSONObj& mongo::QueryPlan::_order [private] |
Definition at line 78 of file queryoptimizer.h.
shared_ptr< FieldRangeVector > mongo::QueryPlan::_originalFrv [private] |
Definition at line 85 of file queryoptimizer.h.
const BSONObj& mongo::QueryPlan::_originalQuery [private] |
Definition at line 77 of file queryoptimizer.h.
bool mongo::QueryPlan::_scanAndOrderRequired [private] |
Definition at line 81 of file queryoptimizer.h.
string mongo::QueryPlan::_special [private] |
Definition at line 90 of file queryoptimizer.h.
BSONObj mongo::QueryPlan::_startKey [private] |
Definition at line 86 of file queryoptimizer.h.
bool mongo::QueryPlan::_startOrEndSpec [private] |
Definition at line 92 of file queryoptimizer.h.
IndexType* mongo::QueryPlan::_type [private] |
Definition at line 91 of file queryoptimizer.h.
bool mongo::QueryPlan::_unhelpful [private] |
Definition at line 89 of file queryoptimizer.h.