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.