diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2019-02-08 11:51:07 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2019-02-08 11:51:07 +0000 |
commit | ad0bc187fa61734b55a176eb1d378cb37520793d (patch) | |
tree | e168aa57c5b69d41e240f5cf82f8b23b85870089 /searchcore | |
parent | 46d78e85240e31ce60e0fa608b216e5e5b8170ba (diff) |
Ignore the doom overtime when computing the softDoomFactor.
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/matching/matcher.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp b/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp index b25ad2176bb..cf7cbe9b8d9 100644 --- a/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp +++ b/searchcore/src/vespa/searchcore/proton/matching/matcher.cpp @@ -316,13 +316,11 @@ Matcher::match(const SearchRequest &request, vespalib::ThreadBundle &threadBundl _stats.add(my_stats); if (my_stats.softDoomed()) { double old = _stats.softDoomFactor(); - fastos::TimeStamp left = my_stats.doomOvertime(); - fastos::TimeStamp realTimeout = (left >= 0) ? request.getTimeout() : (request.getTimeout() - left); - fastos::TimeStamp softLimit = uint64_t((1.0 - _rankSetup->getSoftTimeoutTailCost()) * realTimeout); - _stats.updatesoftDoomFactor(request.getTimeout(), softLimit, duration); - LOG(info, "Triggered softtimeout factor adjustment. request=%1.3f, real=%1.3f, limit=%1.3f and duration=%1.3f, rankprofile=%s" + fastos::TimeStamp softLimit = uint64_t((1.0 - _rankSetup->getSoftTimeoutTailCost()) * request.getTimeout()); + _stats.updatesoftDoomFactor(request.getTimeout(), softLimit, duration - my_stats.doomOvertime()); + LOG(info, "Triggered softtimeout factor adjustment. request=%1.3f, doomOvertime=%1.3f, limit=%1.3f and duration=%1.3f, rankprofile=%s" ", factor adjusted from %1.3f to %1.3f", - request.getTimeout().sec(), realTimeout.sec(), softLimit.sec(), duration.sec(), + request.getTimeout().sec(), my_stats.doomOvertime().sec(), softLimit.sec(), duration.sec(), request.ranking.c_str(), old, _stats.softDoomFactor()); } } |