diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2022-09-10 16:47:24 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-09-10 16:47:24 +0200 |
commit | fda7503c125fd5a304cb2bb7d3d4e705f97987b5 (patch) | |
tree | d658b275d27393a1e94b3a65bd249c9560690a1f /searchlib/src/vespa | |
parent | 9aa1fd9329c9bf0fd47c893483c761381bbe383f (diff) | |
parent | 1d3740fda0b4bcbe4d36176aa6188e153d57c3dc (diff) |
Merge pull request #24000 from vespa-engine/balder/propagate-target-active-docs
Balder/propagate target active docs
Diffstat (limited to 'searchlib/src/vespa')
4 files changed, 12 insertions, 17 deletions
diff --git a/searchlib/src/vespa/searchlib/engine/monitorreply.cpp b/searchlib/src/vespa/searchlib/engine/monitorreply.cpp index 44a00638661..139c377a626 100644 --- a/searchlib/src/vespa/searchlib/engine/monitorreply.cpp +++ b/searchlib/src/vespa/searchlib/engine/monitorreply.cpp @@ -6,6 +6,7 @@ namespace search::engine { MonitorReply::MonitorReply() : activeDocs(0), + targetActiveDocs(0), distribution_key(-1), timestamp(), is_blocking_writes(false) diff --git a/searchlib/src/vespa/searchlib/engine/monitorreply.h b/searchlib/src/vespa/searchlib/engine/monitorreply.h index 52948e9f963..7e0af9be63a 100644 --- a/searchlib/src/vespa/searchlib/engine/monitorreply.h +++ b/searchlib/src/vespa/searchlib/engine/monitorreply.h @@ -9,6 +9,7 @@ namespace search::engine { struct MonitorReply { uint64_t activeDocs; + uint64_t targetActiveDocs; int32_t distribution_key; uint32_t timestamp; bool is_blocking_writes; diff --git a/searchlib/src/vespa/searchlib/engine/proto_converter.cpp b/searchlib/src/vespa/searchlib/engine/proto_converter.cpp index 8d06dcc10e6..842ced502c6 100644 --- a/searchlib/src/vespa/searchlib/engine/proto_converter.cpp +++ b/searchlib/src/vespa/searchlib/engine/proto_converter.cpp @@ -101,7 +101,7 @@ ProtoConverter::search_reply_to_proto(const SearchReply &reply, ProtoSearchReply proto.set_total_hit_count(reply.totalHitCount); proto.set_coverage_docs(reply.coverage.getCovered()); proto.set_active_docs(reply.coverage.getActive()); - proto.set_soon_active_docs(reply.coverage.getSoonActive()); + proto.set_target_active_docs(reply.coverage.getTargetActive()); proto.set_degraded_by_match_phase(reply.coverage.wasDegradedByMatchPhase()); proto.set_degraded_by_soft_timeout(reply.coverage.wasDegradedByTimeout()); bool has_sort_data = ! reply.sortIndex.empty(); @@ -228,6 +228,7 @@ ProtoConverter::monitor_reply_to_proto(const MonitorReply &reply, ProtoMonitorRe { proto.set_online(reply.timestamp != 0); proto.set_active_docs(reply.activeDocs); + proto.set_target_active_docs(reply.targetActiveDocs); proto.set_distribution_key(reply.distribution_key); proto.set_is_blocking_writes(reply.is_blocking_writes); } diff --git a/searchlib/src/vespa/searchlib/engine/searchreply.h b/searchlib/src/vespa/searchlib/engine/searchreply.h index 25418a698c2..fc64566acf1 100644 --- a/searchlib/src/vespa/searchlib/engine/searchreply.h +++ b/searchlib/src/vespa/searchlib/engine/searchreply.h @@ -28,38 +28,30 @@ public: class Coverage { public: Coverage() noexcept : Coverage(0) { } - Coverage(uint64_t active) noexcept : Coverage(active, active) { } + explicit Coverage(uint64_t active) noexcept : Coverage(active, active) { } Coverage(uint64_t active, uint64_t covered) noexcept - : _covered(covered), _active(active), _soonActive(active), - _degradeReason(0), _nodesQueried(1), _nodesReplied(1) + : _covered(covered), _active(active), _targetActive(active), + _degradeReason(0) { } uint64_t getCovered() const { return _covered; } uint64_t getActive() const { return _active; } - uint64_t getSoonActive() const { return _soonActive; } - uint32_t getDegradeReason() const { return _degradeReason; } - uint16_t getNodesQueried() const { return _nodesQueried; } - uint16_t getNodesReplied() const { return _nodesReplied; } + uint64_t getTargetActive() const { return _targetActive; } + bool wasDegradedByMatchPhase() const { return ((_degradeReason & MATCH_PHASE) != 0); } bool wasDegradedByTimeout() const { return ((_degradeReason & TIMEOUT) != 0); } Coverage & setCovered(uint64_t v) { _covered = v; return *this; } Coverage & setActive(uint64_t v) { _active = v; return *this; } - Coverage & setSoonActive(uint64_t v) { _soonActive = v; return *this; } - Coverage & setDegradeReason(uint32_t v) { _degradeReason = v; return *this; } - Coverage & setNodesQueried(uint16_t v) { _nodesQueried = v; return *this; } - Coverage & setNodesReplied(uint16_t v) { _nodesReplied = v; return *this; } + Coverage & setTargetActive(uint64_t v) { _targetActive = v; return *this; } Coverage & degradeMatchPhase() { _degradeReason |= MATCH_PHASE; return *this; } Coverage & degradeTimeout() { _degradeReason |= TIMEOUT; return *this; } - Coverage & degradeAdaptiveTimeout() { _degradeReason |= ADAPTIVE_TIMEOUT; return *this; } - enum DegradeReason {MATCH_PHASE=0x01, TIMEOUT=0x02, ADAPTIVE_TIMEOUT=0x04}; + enum DegradeReason {MATCH_PHASE=0x01, TIMEOUT=0x02}; private: uint64_t _covered; uint64_t _active; - uint64_t _soonActive; + uint64_t _targetActive; uint32_t _degradeReason; - uint16_t _nodesQueried; - uint16_t _nodesReplied; }; private: |