Repository: samza
Updated Branches:
  refs/heads/master 94951bc81 -> e2335bd56


Fix for transient error failure -- concurrent evictions causing incorrectness

Author: rmath...@linkedin.com <rmath...@linkedin.com>

Reviewers: Jagadish <jagad...@apache.org>

Closes #599 from rmatharu/bugfix


Project: http://git-wip-us.apache.org/repos/asf/samza/repo
Commit: http://git-wip-us.apache.org/repos/asf/samza/commit/e2335bd5
Tree: http://git-wip-us.apache.org/repos/asf/samza/tree/e2335bd5
Diff: http://git-wip-us.apache.org/repos/asf/samza/diff/e2335bd5

Branch: refs/heads/master
Commit: e2335bd56efd709459e0514971e53eed84ef8f5f
Parents: 94951bc
Author: rmath...@linkedin.com <rmath...@linkedin.com>
Authored: Tue Aug 7 17:39:04 2018 -0700
Committer: Jagadish <jvenkatra...@linkedin.com>
Committed: Tue Aug 7 17:39:04 2018 -0700

----------------------------------------------------------------------
 samza-api/src/main/java/org/apache/samza/metrics/ListGauge.java | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/samza/blob/e2335bd5/samza-api/src/main/java/org/apache/samza/metrics/ListGauge.java
----------------------------------------------------------------------
diff --git a/samza-api/src/main/java/org/apache/samza/metrics/ListGauge.java 
b/samza-api/src/main/java/org/apache/samza/metrics/ListGauge.java
index 545fd45..d0fb326 100644
--- a/samza-api/src/main/java/org/apache/samza/metrics/ListGauge.java
+++ b/samza-api/src/main/java/org/apache/samza/metrics/ListGauge.java
@@ -109,8 +109,9 @@ public class ListGauge<T> implements Metric {
 
   /**
    * Evicts entries from the elements list, based on the given item-size and 
durationThreshold.
+   * Concurrent eviction threads can cause incorrectness (when reading 
elements.size or elements.peek).
    */
-  private void evict() {
+  private synchronized void evict() {
     this.evictBasedOnSize();
     this.evictBasedOnTimestamp();
   }

Reply via email to