Murtadha Hubail has uploaded this change for review. ( 
https://asterix-gerrit.ics.uci.edu/3395


Change subject: [NO ISSUE][CLUS] Ignore Received Heartbeats Before App 
Initialization
......................................................................

[NO ISSUE][CLUS] Ignore Received Heartbeats Before App Initialization

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

Details:
- Ignore received node heartbeats on CC when the CC has not
  been initialized since nodes are not registered yet.

Change-Id: I65ef92ae3179214f1efecd1bb44da4772b7a3dd9
---
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerIPCI.java
1 file changed, 9 insertions(+), 3 deletions(-)



  git pull ssh://asterix-gerrit.ics.uci.edu:29418/asterixdb 
refs/changes/95/3395/1

diff --git 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerIPCI.java
 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerIPCI.java
index 78ed9b9..97e05da 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerIPCI.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerIPCI.java
@@ -19,6 +19,7 @@
 package org.apache.hyracks.control.cc;

 import java.util.Map;
+import java.util.concurrent.ExecutorService;

 import org.apache.hyracks.api.client.NodeControllerInfo;
 import org.apache.hyracks.control.cc.work.ApplicationMessageWork;
@@ -73,9 +74,7 @@
                 ccs.getWorkQueue().schedule(new 
UnregisterNodeWork(ccs.getNodeManager(), unf.getNodeId()));
                 break;
             case NODE_HEARTBEAT:
-                CCNCFunctions.NodeHeartbeatFunction nhf = 
(CCNCFunctions.NodeHeartbeatFunction) fn;
-                ccs.getExecutor().execute(
-                        new NodeHeartbeatWork(ccs, nhf.getNodeId(), 
nhf.getHeartbeatData(), nhf.getNcAddress()));
+                processNodeHeartbeat(ccs, 
(CCNCFunctions.NodeHeartbeatFunction) fn);
                 break;
             case NOTIFY_JOBLET_CLEANUP:
                 CCNCFunctions.NotifyJobletCleanupFunction njcf = 
(CCNCFunctions.NotifyJobletCleanupFunction) fn;
@@ -170,4 +169,11 @@
                 LOGGER.warn("Unknown function: " + fn.getFunctionId());
         }
     }
+
+    private static void processNodeHeartbeat(ClusterControllerService ccs, 
CCNCFunctions.NodeHeartbeatFunction fn) {
+        final ExecutorService executor = ccs.getExecutor();
+        if (executor != null) {
+            executor.execute(new NodeHeartbeatWork(ccs, fn.getNodeId(), 
fn.getHeartbeatData(), fn.getNcAddress()));
+        }
+    }
 }

--
To view, visit https://asterix-gerrit.ics.uci.edu/3395
To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings

Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-MessageType: newchange
Gerrit-Change-Id: I65ef92ae3179214f1efecd1bb44da4772b7a3dd9
Gerrit-Change-Number: 3395
Gerrit-PatchSet: 1
Gerrit-Owner: Murtadha Hubail <[email protected]>

Reply via email to