From efb5946d4d7630e4d95e952912fd9c60aa17fc2c Mon Sep 17 00:00:00 2001 From: Bjørn Christian Seime Date: Wed, 12 Jul 2017 17:05:06 +0200 Subject: Only create timeout error when it is actually needed --- .../java/com/yahoo/search/searchchain/FutureResult.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) (limited to 'container-search') diff --git a/container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java b/container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java index 8247f7bd5bd..4f76c05ac65 100644 --- a/container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java +++ b/container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java @@ -1,6 +1,11 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.search.searchchain; +import com.yahoo.search.Query; +import com.yahoo.search.Result; +import com.yahoo.search.result.ErrorMessage; +import com.yahoo.yolean.Exceptions; + import java.util.Optional; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; @@ -10,11 +15,6 @@ import java.util.concurrent.TimeoutException; import java.util.logging.Level; import java.util.logging.Logger; -import com.yahoo.yolean.Exceptions; -import com.yahoo.search.Query; -import com.yahoo.search.Result; -import com.yahoo.search.result.ErrorMessage; - /** * Extends a {@code FutureTask}, with some added error handling * @@ -59,7 +59,8 @@ public class FutureResult extends FutureTask { */ @Override public Result get(long timeout, TimeUnit timeunit) { - return getIfAvailable(timeout, timeunit).orElse(new Result(getQuery(), createTimeoutError())); + return getIfAvailable(timeout, timeunit) + .orElseGet(() -> new Result(getQuery(), createTimeoutError())); } /** -- cgit v1.2.3