[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 <[email protected]> Tested-by: Jenkins <[email protected]> Integration-Tests: Jenkins <[email protected]> Reviewed-by: Murtadha Hubail <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/asterixdb/repo Commit: http://git-wip-us.apache.org/repos/asf/asterixdb/commit/8078e65c Tree: http://git-wip-us.apache.org/repos/asf/asterixdb/tree/8078e65c Diff: http://git-wip-us.apache.org/repos/asf/asterixdb/diff/8078e65c Branch: refs/heads/master Commit: 8078e65c9d3c5b17d9074ce4b77ea8851ec5e4bd Parents: 36e20b7 Author: Murtadha Hubail <[email protected]> Authored: Sat Sep 15 16:09:06 2018 +0300 Committer: Murtadha Hubail <[email protected]> Committed: Mon Sep 17 04:35:32 2018 -0700 ---------------------------------------------------------------------- .../apache/asterix/app/active/ActiveEntityEventsListener.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/asterixdb/blob/8078e65c/asterixdb/asterix-app/src/main/java/org/apache/asterix/app/active/ActiveEntityEventsListener.java ---------------------------------------------------------------------- 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 @@ public abstract class ActiveEntityEventsListener implements IActiveEntityControl 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;
