From 2c3eda86a407d441561dcec1c929d2a29bea697a Mon Sep 17 00:00:00 2001 From: Henning Baldersheim Date: Fri, 9 Feb 2018 11:10:19 +0100 Subject: Compute nodes queried/replied more correctly during merge to get it more correct in MLD cases. --- searchcore/src/vespa/searchcore/fdispatch/search/fnet_search.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'searchcore') 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); } -- cgit v1.2.3