[NO ISSUE][OTH] Ensure Stats Refresh is Thread Safe
- user model changes: no
- storage format changes: no
- interface changes: no
Details:
- Make variables used in determining the need to refresh
stats volatile to ensure refresh won't be called by
multiple thread if not needed.
Change-Id: I07d76e53d193f93e0aaf08715e3f4c82b3b1524e
Reviewed-on: https://asterix-gerrit.ics.uci.edu/2969
Sonar-Qube: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Reviewed-by: Murtadha Hubail <mhubail@apache.org>
diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
index b034f47..62f2c02 100644
--- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
+++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java
@@ -92,9 +92,9 @@
private AlgebricksAbsolutePartitionConstraint locations;
protected ActivityState prevState;
protected JobId jobId;
- protected long statsTimestamp;
+ protected volatile long statsTimestamp;
protected String stats;
- protected boolean isFetchingStats;
+ protected volatile boolean isFetchingStats;
protected int numRegistered;
protected int numDeRegistered;
protected volatile RecoveryTask rt;