aboutsummaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@yahoo-inc.com>2017-07-12 17:05:06 +0200
committerBjørn Christian Seime <bjorncs@yahoo-inc.com>2017-07-12 17:05:06 +0200
commitefb5946d4d7630e4d95e952912fd9c60aa17fc2c (patch)
tree037ac993d19d10dc5d70607e21fd01fdc7e4a61e /container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java
parent98f1c8eb8b576214b4a2ac8db27b527ea71aa00e (diff)
Only create timeout error when it is actually needed
Diffstat (limited to 'container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java')
-rw-r--r--container-search/src/main/java/com/yahoo/search/searchchain/FutureResult.java13
1 files changed, 7 insertions, 6 deletions
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<Result>}, with some added error handling
*
@@ -59,7 +59,8 @@ public class FutureResult extends FutureTask<Result> {
*/
@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()));
}
/**