#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.