diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2023-09-20 09:51:24 +0000 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2023-09-20 09:51:24 +0000 |
commit | 0e5fdfa53ba98d79fddf0481ed6cd70b8de18507 (patch) | |
tree | 1419935351506f21b6fbe73c3d4235ad3c454482 /searchcore | |
parent | 3c7ed3681f497c846007074a6a2c0509a5b34f88 (diff) |
Return early if hard doomed in the Q
Diffstat (limited to 'searchcore')
-rw-r--r-- | searchcore/src/vespa/searchcore/proton/matchengine/matchengine.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/matchengine/matchengine.cpp b/searchcore/src/vespa/searchcore/proton/matchengine/matchengine.cpp index 8f4d1a2efb9..25b16909a42 100644 --- a/searchcore/src/vespa/searchcore/proton/matchengine/matchengine.cpp +++ b/searchcore/src/vespa/searchcore/proton/matchengine/matchengine.cpp @@ -123,8 +123,12 @@ MatchEngine::search(SearchRequest::Source request, SearchClient &client) return performSearch(std::move(request)); } -std::unique_ptr<search::engine::SearchReply> -MatchEngine::doSearch(const search::engine::SearchRequest & searchRequest) { +std::unique_ptr<SearchReply> +MatchEngine::doSearch(const SearchRequest & searchRequest) { + if (searchRequest.expired()) { + vespalib::Issue::report("Query timed out in the query Q."); + return std::make_unique<SearchReply>(); + } // 3 is the minimum level required for backend tracing. searchRequest.setTraceLevel(trace::Level::lookup(searchRequest.propertiesMap.modelOverrides(), searchRequest.trace().getLevel()), 3); |