diff options
author | Henning Baldersheim <balder@oath.com> | 2018-02-09 11:10:19 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@oath.com> | 2018-02-09 12:07:21 +0100 |
commit | 2c3eda86a407d441561dcec1c929d2a29bea697a (patch) | |
tree | 677440b7d1e2e333b832132b8890c97a4a8f12fc /searchcore | |
parent | 4f55d543f0569d992a21f69b4b3c1309790de74d (diff) |
Compute nodes queried/replied more correctly during merge to get it more correct in MLD cases.
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp b/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp index 98642c6edf6..4c47e381470 100644 --- a/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp +++ b/searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp @@ -869,6 +869,8 @@ FastS_FNET_Search::CheckCoverage() uint64_t activeDocs = 0; uint64_t soonActiveDocs = 0; uint32_t degradedReason = 0; + uint16_t nodesQueried = 0; + uint16_t nodesReplied = 0; size_t cntNone(0); for (const FastS_FNET_SearchNode & node : _nodes) { @@ -877,14 +879,17 @@ FastS_FNET_Search::CheckCoverage() activeDocs += node._qresult->_activeDocs; soonActiveDocs += node._qresult->_soonActiveDocs; degradedReason |= node._qresult->_coverageDegradeReason; + nodesQueried += node._qresult->getNodesQueried(); + nodesReplied += node._qresult->getNodesReplied(); } else { + nodesQueried++; cntNone++; } } if ((cntNone > 0) && (cntNone != _nodes.size())) { activeDocs += cntNone * activeDocs/(_nodes.size() - cntNone); } - _util.SetCoverage(covDocs, activeDocs, soonActiveDocs, degradedReason, _nodes.size(), _nodes.size() - cntNone); + _util.SetCoverage(covDocs, activeDocs, soonActiveDocs, degradedReason, nodesQueried, nodesReplied); } |