NIFI-3933:
- When monitoring heartbeats use the connected nodes as the basis for the 
check. This addresses the case when a node is terminated and no corresponding 
heartbeats exist.

This closes #1838.


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

Branch: refs/heads/master
Commit: ded396f0ef2c090456a532f2ce427525c8a1a4b6
Parents: d33c4c7
Author: Matt Gilman <matt.c.gil...@gmail.com>
Authored: Mon May 22 15:28:30 2017 -0400
Committer: Mark Payne <marka...@hotmail.com>
Committed: Mon May 22 16:51:13 2017 -0400

----------------------------------------------------------------------
 .../nifi/cluster/coordination/heartbeat/HeartbeatMonitor.java | 7 -------
 .../coordination/heartbeat/AbstractHeartbeatMonitor.java      | 7 +++++++
 2 files changed, 7 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi/blob/ded396f0/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/HeartbeatMonitor.java
----------------------------------------------------------------------
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/HeartbeatMonitor.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/HeartbeatMonitor.java
index 3cc5fd0..6a0937d 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/HeartbeatMonitor.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster-protocol/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/HeartbeatMonitor.java
@@ -59,13 +59,6 @@ public interface HeartbeatMonitor {
     void purgeHeartbeats();
 
     /**
-     * Returns when the heartbeats were purged last.
-     *
-     * @return when the heartbeats were purged last
-     */
-    long getPurgeTimestamp();
-
-    /**
      * @return the address that heartbeats should be sent to when this node is 
elected coordinator.
      */
     String getHeartbeatAddress();

http://git-wip-us.apache.org/repos/asf/nifi/blob/ded396f0/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/AbstractHeartbeatMonitor.java
----------------------------------------------------------------------
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/AbstractHeartbeatMonitor.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/AbstractHeartbeatMonitor.java
index c5d9e4b..4c251f9 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/AbstractHeartbeatMonitor.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-cluster/src/main/java/org/apache/nifi/cluster/coordination/heartbeat/AbstractHeartbeatMonitor.java
@@ -282,6 +282,13 @@ public abstract class AbstractHeartbeatMonitor implements 
HeartbeatMonitor {
     protected abstract Map<NodeIdentifier, NodeHeartbeat> 
getLatestHeartbeats();
 
     /**
+     * Returns when the heartbeats were purged last.
+     *
+     * @return when the heartbeats were purged last
+     */
+    protected abstract long getPurgeTimestamp();
+
+    /**
      * This method does nothing in the abstract class but is meant for
      * subclasses to override in order to provide functionality when the 
monitor
      * is started.

Reply via email to