summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@oath.com>2018-05-08 12:51:27 +0200
committerHenning Baldersheim <balder@oath.com>2018-05-08 12:51:27 +0200
commit264728fdda5b4b3ef7655f3221b5ad75d1cfbff3 (patch)
tree69e1eecb13eefae7d190c1694d8869bbfd3eb02b /searchcore
parent448154b8192771e2a0f1b7889fbac61da50b394e (diff)
Must explicit count connected nodes.
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp b/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp
index db8b892391f..66b070b0757 100644
--- a/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp
+++ b/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp
@@ -872,9 +872,11 @@ FastS_FNET_Search::CheckCoverage()
uint16_t nodesQueried = 0;
uint16_t nodesReplied = 0;
size_t cntNone(0);
+ size_t connectedNodes(0);
for (const FastS_FNET_SearchNode & node : _nodes) {
if (node.IsConnected()) {
+ connectedNodes++;
if (node._qresult != nullptr) {
covDocs += node._qresult->_coverageDocs;
activeDocs += node._qresult->_activeDocs;
@@ -889,10 +891,10 @@ FastS_FNET_Search::CheckCoverage()
}
}
const ssize_t missingParts = cntNone - (_dataset->getSearchableCopies() - 1);
- if ((missingParts > 0) && (cntNone != _nodes.size())) {
+ if ((missingParts > 0) && (cntNone != connectedNodes)) {
// TODO This is a dirty way of anticipating missing coverage.
// It should be done differently
- activeDocs += missingParts * activeDocs/(_nodes.size() - cntNone);
+ activeDocs += missingParts * activeDocs/(connectedNodes - cntNone);
}
_util.SetCoverage(covDocs, activeDocs, soonActiveDocs, degradedReason, nodesQueried, nodesReplied);
}