Github user danny0405 commented on a diff in the pull request: https://github.com/apache/storm/pull/2800#discussion_r212800892 --- Diff: storm-server/src/main/java/org/apache/storm/daemon/nimbus/Nimbus.java --- @@ -490,7 +493,7 @@ public Nimbus(Map<String, Object> conf, INimbus inimbus, IStormClusterState stor stormClusterState = makeStormClusterState(conf); } this.stormClusterState = stormClusterState; - this.heartbeatsCache = new AtomicReference<>(new HashMap<>()); + this.heartbeatsCache = new ConcurrentHashMap<>(); --- End diff -- Please change back to `AtomicReference` cause it is multi_thread visible, actually the thrift server serves the RPC methods through multi threading, so we should keep the heartbeatsCache modification be seen as much as possible.
---