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 2015/02/10 21:09:12 UTC

[2/3] incubator-brooklyn git commit: tidy of sensor timestamp workaround, in response to code review

tidy of sensor timestamp workaround, in response to code review


Project: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/commit/9453502e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/tree/9453502e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/diff/9453502e

Branch: refs/heads/master
Commit: 9453502e0fb3aac129768578653f1292a4925dee
Parents: 87604e2
Author: Alex Heneveld <al...@cloudsoftcorp.com>
Authored: Mon Feb 9 17:42:47 2015 +0000
Committer: Alex Heneveld <al...@cloudsoftcorp.com>
Committed: Mon Feb 9 17:42:47 2015 +0000

----------------------------------------------------------------------
 .../main/java/brooklyn/enricher/basic/Propagator.java |  5 +++--
 .../java/brooklyn/enricher/basic/Transformer.java     |  1 -
 .../enricher/RollingTimeWindowMeanEnricher.java       | 14 +++-----------
 3 files changed, 6 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9453502e/core/src/main/java/brooklyn/enricher/basic/Propagator.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/enricher/basic/Propagator.java b/core/src/main/java/brooklyn/enricher/basic/Propagator.java
index 78dcac9..5e3ae23 100644
--- a/core/src/main/java/brooklyn/enricher/basic/Propagator.java
+++ b/core/src/main/java/brooklyn/enricher/basic/Propagator.java
@@ -25,7 +25,6 @@ import java.util.Set;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import brooklyn.catalog.Catalog;
 import brooklyn.config.ConfigKey;
 import brooklyn.entity.Entity;
 import brooklyn.entity.basic.Attributes;
@@ -151,7 +150,7 @@ public class Propagator extends AbstractEnricher implements SensorEventListener<
         emit((Sensor)destinationSensor, event.getValue());
     }
 
-    /** useful post-addition to emit current values */
+    /** useful once sensors are added to emit all values */
     public void emitAllAttributes() {
         emitAllAttributes(false);
     }
@@ -166,6 +165,8 @@ public class Propagator extends AbstractEnricher implements SensorEventListener<
             if (s instanceof AttributeSensor) {
                 AttributeSensor destinationSensor = (AttributeSensor<?>) getDestinationSensor(s);
                 Object v = producer.getAttribute((AttributeSensor<?>)s);
+                // TODO we should keep a timestamp for the source sensor and echo it 
+                // (this pretends timestamps are current, which probably isn't the case when we are propagating)
                 if (v != null || includeNullValues) entity.setAttribute(destinationSensor, v);
             }
         }

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9453502e/core/src/main/java/brooklyn/enricher/basic/Transformer.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/brooklyn/enricher/basic/Transformer.java b/core/src/main/java/brooklyn/enricher/basic/Transformer.java
index d126307..86911e7 100644
--- a/core/src/main/java/brooklyn/enricher/basic/Transformer.java
+++ b/core/src/main/java/brooklyn/enricher/basic/Transformer.java
@@ -23,7 +23,6 @@ import static com.google.common.base.Preconditions.checkArgument;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import brooklyn.catalog.Catalog;
 import brooklyn.config.ConfigKey;
 import brooklyn.entity.Entity;
 import brooklyn.entity.basic.ConfigKeys;

http://git-wip-us.apache.org/repos/asf/incubator-brooklyn/blob/9453502e/policy/src/main/java/brooklyn/enricher/RollingTimeWindowMeanEnricher.java
----------------------------------------------------------------------
diff --git a/policy/src/main/java/brooklyn/enricher/RollingTimeWindowMeanEnricher.java b/policy/src/main/java/brooklyn/enricher/RollingTimeWindowMeanEnricher.java
index 3c9247b..694977c 100644
--- a/policy/src/main/java/brooklyn/enricher/RollingTimeWindowMeanEnricher.java
+++ b/policy/src/main/java/brooklyn/enricher/RollingTimeWindowMeanEnricher.java
@@ -64,11 +64,6 @@ public class RollingTimeWindowMeanEnricher<T extends Number> extends AbstractTyp
     public static ConfigKey<Double> CONFIDENCE_REQUIRED_TO_PUBLISH = ConfigKeys.newDoubleConfigKey("confidenceRequired",
         "Minimum confidence level (ie period covered) required to publish a rolling average", 0.8d);
 
-    // without this, we will refuse to publish if the server time differs from the publisher time (in a distributed setup);
-    // also we won't publish if a lot of time is spent actually doing the computation
-    public static ConfigKey<Duration> TIMESTAMP_GRACE_TIME = ConfigKeys.newConfigKey(Duration.class, "timestampGraceTime",
-        "When computing windowed average, allow this much slippage time between published metrics and local clock", Duration.millis(500));
-
     public static class ConfidenceQualifiedNumber {
         final Double value;
         final double confidence;
@@ -133,10 +128,12 @@ public class RollingTimeWindowMeanEnricher<T extends Number> extends AbstractTyp
         }
     }
     
+    @Deprecated /** @deprecatedsince 0.7.0; not used; use the 2-arg method */
     public ConfidenceQualifiedNumber getAverage() {
-        return getAverage(System.currentTimeMillis(), getConfig(TIMESTAMP_GRACE_TIME).toMilliseconds());
+        return getAverage(System.currentTimeMillis(), 0);
     }
     
+    @Deprecated /** @deprecated since 0.7.0; not used; use the 2-arg method */
     public ConfidenceQualifiedNumber getAverage(long fromTimeExact) {
         return getAverage(fromTimeExact, 0);
     }
@@ -146,11 +143,6 @@ public class RollingTimeWindowMeanEnricher<T extends Number> extends AbstractTyp
             return lastAverage = new ConfidenceQualifiedNumber(lastAverage.value, 0.0d);
         }
         
-        // (previously there was an old comment here, pre-Jul-2014,  
-        // saying "grkvlt - see email to development list";
-        // but i can't find that email)
-        // some of the more recent confidence and bogus-timestamp + exclusion logic might fix this though
-        
         long firstTimestamp = -1;
         Iterator<Long> ti = timestamps.iterator();
         while (ti.hasNext()) {