aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@verizonmedia.com>2022-06-16 13:58:19 +0200
committerBjørn Christian Seime <bjorncs@verizonmedia.com>2022-06-16 13:58:19 +0200
commit177e3837a6b5c0b257c215cc8e61c8907fea2efb (patch)
treeb6b1888f4ee1f969794ea62acfb6f1ef04358c38 /container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java
parent5e00300349d15d4aad0df4ab0631a811df526b79 (diff)
Improve timeout logic for docsum/search invokers
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java')
-rw-r--r--container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java10
1 files changed, 5 insertions, 5 deletions
diff --git a/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java b/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java
index 973b9093d9d..51127dc5416 100644
--- a/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java
+++ b/container-search/src/main/java/com/yahoo/search/dispatch/rpc/RpcSearchInvoker.java
@@ -56,25 +56,25 @@ public class RpcSearchInvoker extends SearchInvoker implements Client.ResponseRe
}
query.trace(false, 5, "Sending search request with jrt/protobuf to node with dist key ", node.key());
- RpcContext context = getContext(incomingContext);
- double timeoutSeconds = ((double) query.getTimeLeft() - 3.0) / 1000.0;
+ var timeout = TimeoutHelper.calculateTimeout(query);
+ RpcContext context = getContext(incomingContext, timeout.request());
nodeConnection.request(RPC_METHOD,
context.compressedPayload.type(),
context.compressedPayload.uncompressedSize(),
context.compressedPayload.data(),
this,
- timeoutSeconds);
+ timeout.client());
return context;
}
- private RpcContext getContext(Object incomingContext) {
+ private RpcContext getContext(Object incomingContext, double requestTimeout) {
if (incomingContext instanceof RpcContext)
return (RpcContext)incomingContext;
return new RpcContext(resourcePool, query,
ProtobufSerialization.serializeSearchRequest(query,
Math.min(query.getHits(), maxHits),
- searcher.getServerId()));
+ searcher.getServerId(), requestTimeout));
}
@Override