You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@brooklyn.apache.org by al...@apache.org on 2016/10/12 14:27:18 UTC
[2/3] brooklyn-server git commit: BROOKLYN-356: workaround,
by increasing timeout
BROOKLYN-356: workaround, by increasing timeout
Project: http://git-wip-us.apache.org/repos/asf/brooklyn-server/repo
Commit: http://git-wip-us.apache.org/repos/asf/brooklyn-server/commit/0edce987
Tree: http://git-wip-us.apache.org/repos/asf/brooklyn-server/tree/0edce987
Diff: http://git-wip-us.apache.org/repos/asf/brooklyn-server/diff/0edce987
Branch: refs/heads/master
Commit: 0edce9879670560c245f2f6f4df3eae9fd2c27a8
Parents: c45777f
Author: Aled Sage <al...@gmail.com>
Authored: Wed Oct 12 14:17:01 2016 +0100
Committer: Aled Sage <al...@gmail.com>
Committed: Wed Oct 12 14:17:01 2016 +0100
----------------------------------------------------------------------
.../core/objs/AbstractConfigurationSupportInternal.java | 2 +-
.../org/apache/brooklyn/enricher/stock/Transformer.java | 2 +-
.../apache/brooklyn/util/core/task/ValueResolver.java | 12 +++++++++++-
3 files changed, 13 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/0edce987/core/src/main/java/org/apache/brooklyn/core/objs/AbstractConfigurationSupportInternal.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/core/objs/AbstractConfigurationSupportInternal.java b/core/src/main/java/org/apache/brooklyn/core/objs/AbstractConfigurationSupportInternal.java
index 1b87d3c..61dc513 100644
--- a/core/src/main/java/org/apache/brooklyn/core/objs/AbstractConfigurationSupportInternal.java
+++ b/core/src/main/java/org/apache/brooklyn/core/objs/AbstractConfigurationSupportInternal.java
@@ -111,7 +111,7 @@ public abstract class AbstractConfigurationSupportInternal implements BrooklynOb
.tag(BrooklynTaskTags.TRANSIENT_TASK_TAG)
.build());
try {
- T result = t.get(ValueResolver.PRETTY_QUICK_WAIT);
+ T result = t.get(ValueResolver.NON_BLOCKING_WAIT);
return Maybe.of(result);
} catch (TimeoutException e) {
t.cancel(true);
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/0edce987/core/src/main/java/org/apache/brooklyn/enricher/stock/Transformer.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/enricher/stock/Transformer.java b/core/src/main/java/org/apache/brooklyn/enricher/stock/Transformer.java
index 8445076..9c4e657 100644
--- a/core/src/main/java/org/apache/brooklyn/enricher/stock/Transformer.java
+++ b/core/src/main/java/org/apache/brooklyn/enricher/stock/Transformer.java
@@ -90,7 +90,7 @@ public class Transformer<T,U> extends AbstractTransformer<T,U> {
return (U) Tasks.resolving(targetValueRaw).as(targetSensor.getType())
.context(entity)
.description("Computing sensor "+targetSensor+" from "+targetValueRaw)
- .timeout(ValueResolver.PRETTY_QUICK_WAIT)
+ .timeout(ValueResolver.NON_BLOCKING_WAIT)
.getMaybe().orNull();
}
public String toString() {
http://git-wip-us.apache.org/repos/asf/brooklyn-server/blob/0edce987/core/src/main/java/org/apache/brooklyn/util/core/task/ValueResolver.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/brooklyn/util/core/task/ValueResolver.java b/core/src/main/java/org/apache/brooklyn/util/core/task/ValueResolver.java
index 73309ef..2942b23 100644
--- a/core/src/main/java/org/apache/brooklyn/util/core/task/ValueResolver.java
+++ b/core/src/main/java/org/apache/brooklyn/util/core/task/ValueResolver.java
@@ -83,7 +83,17 @@ public class ValueResolver<T> implements DeferredSupplier<T> {
* <p>
* See {@link #REAL_QUICK_WAIT}. */
public static Duration PRETTY_QUICK_WAIT = Duration.millis(200);
-
+
+ /**
+ * Period to wait if we're expecting the operation to be non-blocking, so want to abort if the
+ * invoked task/supplier is taking too long (likely because its value is not yet ready, and
+ * the invoked task is blocked waiting for it).
+ * <p>
+ * See {@link #REAL_QUICK_WAIT} and <a href="https://issues.apache.org/jira/browse/BROOKLYN-356">BROOKLYN-356</a>.
+ */
+ @Beta
+ public static final Duration NON_BLOCKING_WAIT = Duration.millis(500);
+
/** Period to wait when we have to poll but want to give the illusion of no wait.
* See {@link Repeater#DEFAULT_REAL_QUICK_PERIOD} */
public static Duration REAL_QUICK_PERIOD = Repeater.DEFAULT_REAL_QUICK_PERIOD;