summaryrefslogtreecommitdiff
path: root/src/mongo
diff options
context:
space:
mode:
authorQingyang Chen <qingyang.chen@10gen.com>2015-06-04 16:23:57 -0400
committerDavid Storch <david.storch@10gen.com>2015-06-08 21:48:20 -0400
commitee2e87ef994fb486b05cbec24eb16d95b3226136 (patch)
treeb70ee50f4889cb5b2c0ce58750b9f9ddd7190f76 /src/mongo
parentac349d5d3bb607ba9fe2981b8b0181520408751a (diff)
downloadmongo-ee2e87ef994fb486b05cbec24eb16d95b3226136.tar.gz
SERVER-17810 remove matchTested specificStat
Closes #976 Signed-off-by: David Storch <david.storch@10gen.com>
Diffstat (limited to 'src/mongo')
-rw-r--r--src/mongo/db/exec/and_sorted.cpp8
-rw-r--r--src/mongo/db/exec/fetch.cpp4
-rw-r--r--src/mongo/db/exec/index_scan.cpp4
-rw-r--r--src/mongo/db/exec/or.cpp7
-rw-r--r--src/mongo/db/exec/plan_stats.h17
-rw-r--r--src/mongo/db/query/explain.cpp6
6 files changed, 4 insertions, 42 deletions
diff --git a/src/mongo/db/exec/and_sorted.cpp b/src/mongo/db/exec/and_sorted.cpp
index 91036304f58..5262910549e 100644
--- a/src/mongo/db/exec/and_sorted.cpp
+++ b/src/mongo/db/exec/and_sorted.cpp
@@ -43,10 +43,10 @@ namespace mongo {
// static
const char* AndSortedStage::kStageType = "AND_SORTED";
- AndSortedStage::AndSortedStage(WorkingSet* ws,
+ AndSortedStage::AndSortedStage(WorkingSet* ws,
const MatchExpression* filter,
const Collection* collection)
- : _collection(collection),
+ : _collection(collection),
_ws(ws),
_filter(filter),
_targetNode(numeric_limits<size_t>::max()),
@@ -192,10 +192,6 @@ namespace mongo {
// Everyone hit it, hooray. Return it, if it matches.
if (Filter::passes(toMatchTest, _filter)) {
- if (NULL != _filter) {
- ++_specificStats.matchTested;
- }
-
*out = toReturn;
++_commonStats.advanced;
return PlanStage::ADVANCED;
diff --git a/src/mongo/db/exec/fetch.cpp b/src/mongo/db/exec/fetch.cpp
index 423ef2546c3..606c7af6662 100644
--- a/src/mongo/db/exec/fetch.cpp
+++ b/src/mongo/db/exec/fetch.cpp
@@ -210,10 +210,6 @@ namespace mongo {
++_specificStats.docsExamined;
if (Filter::passes(member, _filter)) {
- if (NULL != _filter) {
- ++_specificStats.matchTested;
- }
-
*out = memberID;
++_commonStats.advanced;
diff --git a/src/mongo/db/exec/index_scan.cpp b/src/mongo/db/exec/index_scan.cpp
index b3324254b74..31754175512 100644
--- a/src/mongo/db/exec/index_scan.cpp
+++ b/src/mongo/db/exec/index_scan.cpp
@@ -205,10 +205,8 @@ namespace mongo {
++_commonStats.needTime;
return PlanStage::NEED_TIME;
}
-
- ++_specificStats.matchTested;
}
-
+
if (!kv->key.isOwned()) kv->key = kv->key.getOwned();
// We found something to return, so fill out the WSM.
diff --git a/src/mongo/db/exec/or.cpp b/src/mongo/db/exec/or.cpp
index ee57187c2a2..7565ea9312a 100644
--- a/src/mongo/db/exec/or.cpp
+++ b/src/mongo/db/exec/or.cpp
@@ -62,10 +62,6 @@ namespace mongo {
if (isEOF()) { return PlanStage::IS_EOF; }
- if (0 == _specificStats.matchTested.size()) {
- _specificStats.matchTested = vector<size_t>(_children.size(), 0);
- }
-
WorkingSetID id = WorkingSet::INVALID_ID;
StageState childStatus = _children[_currentChild]->work(&id);
@@ -91,9 +87,6 @@ namespace mongo {
}
if (Filter::passes(member, _filter)) {
- if (NULL != _filter) {
- ++_specificStats.matchTested[_currentChild];
- }
// Match! return it.
*out = id;
++_commonStats.advanced;
diff --git a/src/mongo/db/exec/plan_stats.h b/src/mongo/db/exec/plan_stats.h
index 48ef8b85021..a9d5a2ae187 100644
--- a/src/mongo/db/exec/plan_stats.h
+++ b/src/mongo/db/exec/plan_stats.h
@@ -179,8 +179,7 @@ namespace mongo {
};
struct AndSortedStats : public SpecificStats {
- AndSortedStats() : flagged(0),
- matchTested(0) { }
+ AndSortedStats() : flagged(0) { }
virtual ~AndSortedStats() { }
@@ -194,9 +193,6 @@ namespace mongo {
// How many results were flagged via invalidation?
size_t flagged;
-
- // Fails == common.advanced - matchTested
- size_t matchTested;
};
struct CachedPlanStats : public SpecificStats {
@@ -304,7 +300,6 @@ namespace mongo {
struct FetchStats : public SpecificStats {
FetchStats() : alreadyHasObj(0),
forcedFetches(0),
- matchTested(0),
docsExamined(0) { }
virtual ~FetchStats() { }
@@ -320,9 +315,6 @@ namespace mongo {
// How many records were we forced to fetch as the result of an invalidation?
size_t forcedFetches;
- // We know how many passed (it's the # of advanced) and therefore how many failed.
- size_t matchTested;
-
// The total number of full documents touched by the fetch stage.
size_t docsExamined;
};
@@ -367,7 +359,6 @@ namespace mongo {
dupsTested(0),
dupsDropped(0),
seenInvalidated(0),
- matchTested(0),
keysExamined(0) { }
virtual ~IndexScanStats() { }
@@ -407,9 +398,6 @@ namespace mongo {
size_t seenInvalidated;
// TODO: we could track key sizes here.
- // We know how many passed (it's the # of advanced) and therefore how many failed.
- size_t matchTested;
-
// Number of entries retrieved from the index during the scan.
size_t keysExamined;
@@ -459,9 +447,6 @@ namespace mongo {
// How many calls to invalidate(...) actually removed a RecordId from our deduping map?
size_t locsForgotten;
-
- // We know how many passed (it's the # of advanced) and therefore how many failed.
- std::vector<size_t> matchTested;
};
struct ProjectionStats : public SpecificStats {
diff --git a/src/mongo/db/query/explain.cpp b/src/mongo/db/query/explain.cpp
index 6915511925a..7630bbd4c94 100644
--- a/src/mongo/db/query/explain.cpp
+++ b/src/mongo/db/query/explain.cpp
@@ -259,7 +259,6 @@ namespace mongo {
if (verbosity >= ExplainCommon::EXEC_STATS) {
bob->appendNumber("flagged", spec->flagged);
- bob->appendNumber("matchTested", spec->matchTested);
for (size_t i = 0; i < spec->failedAnd.size(); ++i) {
bob->appendNumber(string(stream() << "failedAnd_" << i),
spec->failedAnd[i]);
@@ -361,7 +360,6 @@ namespace mongo {
bob->appendNumber("dupsTested", spec->dupsTested);
bob->appendNumber("dupsDropped", spec->dupsDropped);
bob->appendNumber("seenInvalidated", spec->seenInvalidated);
- bob->appendNumber("matchTested", spec->matchTested);
}
}
else if (STAGE_OR == stats.stageType) {
@@ -371,10 +369,6 @@ namespace mongo {
bob->appendNumber("dupsTested", spec->dupsTested);
bob->appendNumber("dupsDropped", spec->dupsDropped);
bob->appendNumber("locsForgotten", spec->locsForgotten);
- for (size_t i = 0; i < spec->matchTested.size(); ++i) {
- bob->appendNumber(string(stream() << "matchTested_" << i),
- spec->matchTested[i]);
- }
}
}
else if (STAGE_LIMIT == stats.stageType) {