[NO ISSUE][OTH] Log node and node address on negative heartbeat ack

- user model changes: no
- storage format changes: no
- interface changes: no

Details:

- When sending a negative heartbeat ack to an unregistered node,
  log the node id as well as its address.

Change-Id: I001b98ef1faa953d92332d36c2d4985b34ed57dd
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17305
Reviewed-by: Ali Alsuliman <ali.al.solaiman@gmail.com>
Integration-Tests: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
Tested-by: Jenkins <jenkins@fulliautomatix.ics.uci.edu>
(cherry picked from commit 2538c159d3e1c67b1c3cab15e626d2d4fcd7b79d)
Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/17244
Reviewed-by: Murtadha Hubail <mhubail@apache.org>
diff --git a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/NodeHeartbeatWork.java b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/NodeHeartbeatWork.java
index b772ef9..6fa6224 100644
--- a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/NodeHeartbeatWork.java
+++ b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/work/NodeHeartbeatWork.java
@@ -28,9 +28,12 @@
 import org.apache.hyracks.control.common.heartbeat.HeartbeatData;
 import org.apache.hyracks.control.common.ipc.NodeControllerRemoteProxy;
 import org.apache.logging.log4j.Level;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
 
 public class NodeHeartbeatWork extends AbstractHeartbeatWork {
 
+    private static final Logger LOGGER = LogManager.getLogger();
     private final InetSocketAddress ncAddress;
 
     public NodeHeartbeatWork(ClusterControllerService ccs, String nodeId, HeartbeatData hbData,
@@ -47,6 +50,8 @@
             ncState.getNodeController().heartbeatAck(ccs.getCcId(), null);
         } else {
             // unregistered nc- let him know
+            LOGGER.info("received a heartbeat from unregistered node {}; sending negative ack to node address {}",
+                    nodeId, ncAddress);
             NodeControllerRemoteProxy nc =
                     new NodeControllerRemoteProxy(ccs.getCcId(), ccs.getClusterIPC().getReconnectingHandle(ncAddress));
             nc.heartbeatAck(ccs.getCcId(), HyracksDataException.create(ErrorCode.NO_SUCH_NODE, nodeId));