aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib/src/vespa
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2022-09-10 16:47:24 +0200
committerGitHub <noreply@github.com>2022-09-10 16:47:24 +0200
commitfda7503c125fd5a304cb2bb7d3d4e705f97987b5 (patch)
treed658b275d27393a1e94b3a65bd249c9560690a1f /searchlib/src/vespa
parent9aa1fd9329c9bf0fd47c893483c761381bbe383f (diff)
parent1d3740fda0b4bcbe4d36176aa6188e153d57c3dc (diff)
Merge pull request #24000 from vespa-engine/balder/propagate-target-active-docs
Balder/propagate target active docs
Diffstat (limited to 'searchlib/src/vespa')
-rw-r--r--searchlib/src/vespa/searchlib/engine/monitorreply.cpp1
-rw-r--r--searchlib/src/vespa/searchlib/engine/monitorreply.h1
-rw-r--r--searchlib/src/vespa/searchlib/engine/proto_converter.cpp3
-rw-r--r--searchlib/src/vespa/searchlib/engine/searchreply.h24
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: