commit | ea685582ebf6a00dd672022af9b3438ea8ace86e | [log] [tgz] |
---|---|---|
author | Jordan Halterman <jordan@onlab.us> | Wed May 17 22:40:47 2017 -0700 |
committer | Ray Milkey <ray@onlab.us> | Fri May 19 18:03:22 2017 +0000 |
tree | 42dfee6f62053738158b3066c6fbce3c9082c079 | |
parent | e93cd6127dba44e7446c22ba40ac66b09b2e95b2 [diff] |
[ONOS-6380] Intent performance regression fix - Do not wrap completed futures Change-Id: I94729b6ba0fa22bf14d1910ff05d88395b61c82c
diff --git a/utils/misc/src/main/java/org/onlab/util/Tools.java b/utils/misc/src/main/java/org/onlab/util/Tools.java index 0c76a91..d2aa1f5 100644 --- a/utils/misc/src/main/java/org/onlab/util/Tools.java +++ b/utils/misc/src/main/java/org/onlab/util/Tools.java
@@ -662,6 +662,10 @@ CompletableFuture<T> future, Executor orderedExecutor, Executor threadPoolExecutor) { + if (future.isDone()) { + return future; + } + BlockingAwareFuture<T> newFuture = new BlockingAwareFuture<T>(); future.whenComplete((result, error) -> { Runnable completer = () -> {