abdullah alamoudi has uploaded a new change for review.

  https://asterix-gerrit.ics.uci.edu/365

Change subject: This change fixes the sporadic connection refused errors after 
managix starts up an Asterix instance. This can mostly be seen during 
asterix-installer tests. The fix basically lets managix wait and listens 
through zookeeper for a signal from the cluster c
......................................................................

This change fixes the sporadic connection refused errors after managix starts 
up an Asterix instance. This can mostly be seen during asterix-installer tests.
The fix basically lets managix wait and listens through zookeeper for a signal 
from the cluster controller. Once the cluster controller sends the signal, 
Managix can proceed.

The following commits from your working branch will be included:

commit 44776a48c42a363425c122cd88b4d6f9878e8e09
Author: Abdullah Alamoudi <[email protected]>
Date:   Thu Aug 27 12:30:51 2015 +0300

    Added comments

commit 3e1ac10364eb7af7c6a9845d571fc75f6f876705
Author: Abdullah Alamoudi <[email protected]>
Date:   Thu Aug 27 12:19:55 2015 +0300

    Moved the location of the startup complete reported

commit 297f045fcbc0d9755ee5300daa7a4de163de7643
Author: Abdullah Alamoudi <[email protected]>
Date:   Thu Aug 27 11:07:22 2015 +0300

    Remove backup files

commit a9f1d0c2ef133c5e4d56980934c39308d490f151
Author: Abdullah Alamoudi <[email protected]>
Date:   Thu Aug 27 11:06:27 2015 +0300

    fix the cluster startup connection refused bug

Change-Id: I0975308e1dc2650d8c2e50d58ff2c696b22eaaa4
---
M 
hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/application/ICCApplicationEntryPoint.java
M 
hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java
M 
hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/CCConfig.java
M hyracks/hyracks-examples/text-example/textserver/pom.xml
4 files changed, 195 insertions(+), 179 deletions(-)


  git pull ssh://asterix-gerrit.ics.uci.edu:29418/hyracks refs/changes/65/365/1

diff --git 
a/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/application/ICCApplicationEntryPoint.java
 
b/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/application/ICCApplicationEntryPoint.java
index 9cb15a2..93e1934 100644
--- 
a/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/application/ICCApplicationEntryPoint.java
+++ 
b/hyracks/hyracks-api/src/main/java/org/apache/hyracks/api/application/ICCApplicationEntryPoint.java
@@ -18,4 +18,6 @@
     public void start(ICCApplicationContext ccAppCtx, String[] args) throws 
Exception;
 
     public void stop() throws Exception;
+
+    void startupCompleted(String managixIp) throws Exception;
 }
\ No newline at end of file
diff --git 
a/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java
 
b/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java
index eee283a..25d7e5d 100644
--- 
a/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java
+++ 
b/hyracks/hyracks-control/hyracks-control-cc/src/main/java/org/apache/hyracks/control/cc/ClusterControllerService.java
@@ -150,6 +150,8 @@
 
     private ShutdownRun shutdownCallback;
 
+    private ICCApplicationEntryPoint aep;
+
     public ClusterControllerService(final CCConfig ccConfig) throws Exception {
         this.ccConfig = ccConfig;
         File jobLogFolder = new File(ccConfig.ccRoot, "logs/jobs");
@@ -238,6 +240,10 @@
         datasetDirectoryService.init(executor);
         workQueue.start();
         LOGGER.log(Level.INFO, "Started ClusterControllerService");
+        if (aep != null) {
+            // Sometimes, there is no application entry point. Check 
hyracks-client project
+            aep.startupCompleted(ccConfig.managixIP);
+        }
     }
 
     private void startApplication() throws Exception {
@@ -246,7 +252,7 @@
         String className = ccConfig.appCCMainClass;
         if (className != null) {
             Class<?> c = Class.forName(className);
-            ICCApplicationEntryPoint aep = (ICCApplicationEntryPoint) 
c.newInstance();
+            aep = (ICCApplicationEntryPoint) c.newInstance();
             String[] args = ccConfig.appArgs == null ? null : 
ccConfig.appArgs.toArray(new String[ccConfig.appArgs
                     .size()]);
             aep.start(appCtx, args);
diff --git 
a/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/CCConfig.java
 
b/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/CCConfig.java
index 6a96139..6456241 100644
--- 
a/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/CCConfig.java
+++ 
b/hyracks/hyracks-control/hyracks-control-common/src/main/java/org/apache/hyracks/control/common/controllers/CCConfig.java
@@ -67,6 +67,9 @@
     @Option(name = "-app-cc-main-class", required = false, usage = 
"Application CC Main Class")
     public String appCCMainClass = null;
 
+    @Option(name = "-managix-ip", required = false, usage = "Sets the ip 
address of the installer")
+    public String managixIP = null;
+
     @Argument
     @Option(name = "--", handler = StopOptionHandler.class)
     public List<String> appArgs;
@@ -106,6 +109,10 @@
             cList.add("-app-cc-main-class");
             cList.add(appCCMainClass);
         }
+        if (managixIP != null) {
+            cList.add("-managix-ip");
+            cList.add(managixIP);
+        }
         if (appArgs != null && !appArgs.isEmpty()) {
             cList.add("--");
             for (String appArg : appArgs) {
diff --git a/hyracks/hyracks-examples/text-example/textserver/pom.xml 
b/hyracks/hyracks-examples/text-example/textserver/pom.xml
index 300f980..8a37628 100644
--- a/hyracks/hyracks-examples/text-example/textserver/pom.xml
+++ b/hyracks/hyracks-examples/text-example/textserver/pom.xml
@@ -1,181 +1,182 @@
-<!--
- ! Copyright 2009-2013 by The Regents of the University of California
- ! Licensed under the Apache License, Version 2.0 (the "License");
- ! you may not use this file except in compliance with the License.
- ! you may obtain a copy of the License from
- ! 
- !     http://www.apache.org/licenses/LICENSE-2.0
- ! 
- ! Unless required by applicable law or agreed to in writing, software
- ! distributed under the License is distributed on an "AS IS" BASIS,
- ! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- ! See the License for the specific language governing permissions and
- ! limitations under the License.
- !-->
-<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
-  <modelVersion>4.0.0</modelVersion>
-  <groupId>org.apache.hyracks.examples.text</groupId>
-  <artifactId>textserver</artifactId>
-  <name>textserver</name>
+<!-- ! Copyright 2009-2013 by The Regents of the University of California 
+       ! Licensed under the Apache License, Version 2.0 (the "License"); ! you 
may 
+       not use this file except in compliance with the License. ! you may 
obtain 
+       a copy of the License from ! ! 
http://www.apache.org/licenses/LICENSE-2.0 
+       ! ! Unless required by applicable law or agreed to in writing, software 
! 
+       distributed under the License is distributed on an "AS IS" BASIS, ! 
WITHOUT 
+       WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ! See 
the 
+       License for the specific language governing permissions and ! 
limitations 
+       under the License. ! -->
+<project xmlns="http://maven.apache.org/POM/4.0.0"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
+       xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
http://maven.apache.org/maven-v4_0_0.xsd";>
+       <modelVersion>4.0.0</modelVersion>
+       <groupId>org.apache.hyracks.examples.text</groupId>
+       <artifactId>textserver</artifactId>
+       <name>textserver</name>
 
-  <parent>
-    <groupId>org.apache.hyracks</groupId>
-    <artifactId>text-example</artifactId>
-    <version>0.2.16-SNAPSHOT</version>
-  </parent>
+       <parent>
+               <groupId>org.apache.hyracks</groupId>
+               <artifactId>text-example</artifactId>
+               <version>0.2.16-SNAPSHOT</version>
+       </parent>
 
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.codehaus.mojo</groupId>
-        <artifactId>appassembler-maven-plugin</artifactId>
-        <version>1.3</version>
-        <executions>
-          <execution>
-            <configuration>
-              <programs>
-                <program>
-                  <mainClass>org.apache.hyracks.control.cc.CCDriver</mainClass>
-                  <name>hyrackscc</name>
-                </program>
-                <program>
-                  <mainClass>org.apache.hyracks.control.nc.NCDriver</mainClass>
-                  <name>hyracksnc</name>
-                </program>
-              </programs>
-              <repositoryLayout>flat</repositoryLayout>
-              <repositoryName>lib</repositoryName>
-            </configuration>
-            <phase>package</phase>
-            <goals>
-              <goal>assemble</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-        <artifactId>maven-assembly-plugin</artifactId>
-        <version>2.2-beta-5</version>
-        <executions>
-          <execution>
-            <configuration>
-              <descriptors>
-                <descriptor>src/main/assembly/binary-assembly.xml</descriptor>
-              </descriptors>
-            </configuration>
-            <phase>package</phase>
-            <goals>
-              <goal>attached</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-       <groupId>org.apache.hyracks</groupId>
-       <artifactId>hyracks-virtualcluster-maven-plugin</artifactId>
-       <version>0.2.16-SNAPSHOT</version>
-        <configuration>
-          
<hyracksServerHome>${basedir}/target/textserver-${project.version}-binary-assembly</hyracksServerHome>
-          <jvmOptions>${jvm.extraargs}</jvmOptions>
-        </configuration>
-        <executions>
-          <execution>
-            <id>hyracks-cc-start</id>
-            <phase>pre-integration-test</phase>
-            <goals>
-              <goal>start-cc</goal>
-            </goals>
-          </execution>
-          <execution>
-            <id>hyracks-nc1-start</id>
-            <phase>pre-integration-test</phase>
-            <goals>
-              <goal>start-nc</goal>
-            </goals>
-            <configuration>
-              <nodeId>NC1</nodeId>
-              <dataIpAddress>127.0.0.1</dataIpAddress>
-              <ccHost>localhost</ccHost>
-            </configuration>
-          </execution>
-          <execution>
-            <id>hyracks-nc2-start</id>
-            <phase>pre-integration-test</phase>
-            <goals>
-              <goal>start-nc</goal>
-            </goals>
-            <configuration>
-              <nodeId>NC2</nodeId>
-              <dataIpAddress>127.0.0.1</dataIpAddress>
-              <ccHost>localhost</ccHost>
-            </configuration>
-          </execution>
-          <execution>
-            <id>stop-services</id>
-            <phase>post-integration-test</phase>
-            <goals>
-              <goal>stop-services</goal>
-            </goals>
-          </execution>
-        </executions>
-      </plugin>
-      <plugin>
-       <groupId>org.apache.maven.plugins</groupId>
-       <artifactId>maven-compiler-plugin</artifactId>
-       <version>2.0.2</version>
-        <configuration>
-          <source>1.6</source>
-          <target>1.6</target>
-        </configuration>
-      </plugin>
-      <plugin>
-       <groupId>org.apache.maven.plugins</groupId>
-       <artifactId>maven-failsafe-plugin</artifactId>
-       <version>2.8.1</version>
-       <executions>
-         <execution>
-           <id>it</id>
-           <phase>integration-test</phase>
-           <goals>
-             <goal>integration-test</goal>
-           </goals>
-         </execution>
-       </executions>
-      </plugin>
-    </plugins>
-  </build>
-  <dependencies>
-    <dependency>
-      <!-- Dependency management inherited from top-level hyracks -->
-      <groupId>junit</groupId>
-      <artifactId>junit</artifactId>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hyracks</groupId>
-      <artifactId>texthelper</artifactId>
-      <version>0.2.16-SNAPSHOT</version>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hyracks</groupId>
-      <artifactId>hyracks-control-cc</artifactId>
-      <version>0.2.16-SNAPSHOT</version>
-      <type>jar</type>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hyracks</groupId>
-      <artifactId>hyracks-control-nc</artifactId>
-      <version>0.2.16-SNAPSHOT</version>
-      <type>jar</type>
-      <scope>compile</scope>
-    </dependency>
-    <dependency>
-      <groupId>org.apache.hyracks</groupId>
-      <artifactId>textclient</artifactId>
-      <version>0.2.16-SNAPSHOT</version>
-      <type>jar</type>
-      <scope>test</scope>
-    </dependency>
-  </dependencies>
+       <build>
+               <plugins>
+                       <plugin>
+                               <groupId>org.codehaus.mojo</groupId>
+                               
<artifactId>appassembler-maven-plugin</artifactId>
+                               <version>1.3</version>
+                               <executions>
+                                       <execution>
+                                               <configuration>
+                                                       <programs>
+                                                               <program>
+                                                                       
<mainClass>org.apache.hyracks.control.cc.CCDriver</mainClass>
+                                                                       
<name>hyrackscc</name>
+                                                               </program>
+                                                               <program>
+                                                                       
<mainClass>org.apache.hyracks.control.nc.NCDriver</mainClass>
+                                                                       
<name>hyracksnc</name>
+                                                               </program>
+                                                       </programs>
+                                                       
<repositoryLayout>flat</repositoryLayout>
+                                                       
<repositoryName>lib</repositoryName>
+                                               </configuration>
+                                               <phase>package</phase>
+                                               <goals>
+                                                       <goal>assemble</goal>
+                                               </goals>
+                                       </execution>
+                               </executions>
+                       </plugin>
+                       <plugin>
+                               <artifactId>maven-assembly-plugin</artifactId>
+                               <version>2.2-beta-5</version>
+                               <executions>
+                                       <execution>
+                                               <configuration>
+                                                       <descriptors>
+                                                               
<descriptor>src/main/assembly/binary-assembly.xml</descriptor>
+                                                       </descriptors>
+                                               </configuration>
+                                               <phase>package</phase>
+                                               <goals>
+                                                       <goal>attached</goal>
+                                               </goals>
+                                       </execution>
+                               </executions>
+                       </plugin>
+                       <plugin>
+                               <groupId>org.apache.hyracks</groupId>
+                               
<artifactId>hyracks-virtualcluster-maven-plugin</artifactId>
+                               <version>0.2.16-SNAPSHOT</version>
+                               <configuration>
+                                       
<hyracksServerHome>${basedir}/target/textserver-${project.version}-binary-assembly</hyracksServerHome>
+                                       
<jvmOptions>${jvm.extraargs}</jvmOptions>
+                               </configuration>
+                               <executions>
+                                       <execution>
+                                               <id>hyracks-cc-start</id>
+                                               
<phase>pre-integration-test</phase>
+                                               <goals>
+                                                       <goal>start-cc</goal>
+                                               </goals>
+                                       </execution>
+                                       <execution>
+                                               <id>hyracks-nc1-start</id>
+                                               
<phase>pre-integration-test</phase>
+                                               <goals>
+                                                       <goal>start-nc</goal>
+                                               </goals>
+                                               <configuration>
+                                                       <nodeId>NC1</nodeId>
+                                                       
<dataIpAddress>127.0.0.1</dataIpAddress>
+                                                       
<ccHost>localhost</ccHost>
+                                               </configuration>
+                                       </execution>
+                                       <execution>
+                                               <id>hyracks-nc2-start</id>
+                                               
<phase>pre-integration-test</phase>
+                                               <goals>
+                                                       <goal>start-nc</goal>
+                                               </goals>
+                                               <configuration>
+                                                       <nodeId>NC2</nodeId>
+                                                       
<dataIpAddress>127.0.0.1</dataIpAddress>
+                                                       
<ccHost>localhost</ccHost>
+                                               </configuration>
+                                       </execution>
+                                       <execution>
+                                               <id>stop-services</id>
+                                               
<phase>post-integration-test</phase>
+                                               <goals>
+                                                       
<goal>stop-services</goal>
+                                               </goals>
+                                       </execution>
+                               </executions>
+                       </plugin>
+                       <plugin>
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-compiler-plugin</artifactId>
+                               <version>2.0.2</version>
+                               <configuration>
+                                       <source>1.6</source>
+                                       <target>1.6</target>
+                               </configuration>
+                       </plugin>
+                       <plugin>
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-failsafe-plugin</artifactId>
+                               <version>2.8.1</version>
+                               <executions>
+                                       <execution>
+                                               <id>it</id>
+                                               <phase>integration-test</phase>
+                                               <goals>
+                                                       
<goal>integration-test</goal>
+                                               </goals>
+                                       </execution>
+                               </executions>
+                       </plugin>
+               </plugins>
+       </build>
+       <dependencies>
+               <dependency>
+                       <!-- Dependency management inherited from top-level 
hyracks -->
+                       <groupId>junit</groupId>
+                       <artifactId>junit</artifactId>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.maven.surefire</groupId>
+                       <artifactId>surefire-junit4</artifactId>
+                       <version>2.8.1</version>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.hyracks</groupId>
+                       <artifactId>texthelper</artifactId>
+                       <version>0.2.16-SNAPSHOT</version>
+                       <scope>compile</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.hyracks</groupId>
+                       <artifactId>hyracks-control-cc</artifactId>
+                       <version>0.2.16-SNAPSHOT</version>
+                       <type>jar</type>
+                       <scope>compile</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.hyracks</groupId>
+                       <artifactId>hyracks-control-nc</artifactId>
+                       <version>0.2.16-SNAPSHOT</version>
+                       <type>jar</type>
+                       <scope>compile</scope>
+               </dependency>
+               <dependency>
+                       <groupId>org.apache.hyracks</groupId>
+                       <artifactId>textclient</artifactId>
+                       <version>0.2.16-SNAPSHOT</version>
+                       <type>jar</type>
+                       <scope>test</scope>
+               </dependency>
+       </dependencies>
 </project>

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0975308e1dc2650d8c2e50d58ff2c696b22eaaa4
Gerrit-PatchSet: 1
Gerrit-Project: hyracks
Gerrit-Branch: master
Gerrit-Owner: abdullah alamoudi <[email protected]>

Reply via email to