Ian Maxon has uploaded a new change for review.

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

Change subject: [NO ISSUE] Fix duplicate -Xmx args being passed
......................................................................

[NO ISSUE] Fix duplicate -Xmx args being passed

The -Xmx override was looking for " -Xmx" instead of "-Xmx".
Added a test to stop regression.

Change-Id: I7e59be72fcc9aea3c315c2cee5339c1c7573ef51
---
M 
hyracks-fullstack/hyracks/hyracks-control/hyracks-nc-service/src/main/java/org/apache/hyracks/control/nc/service/NCService.java
M 
hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/server/test/NCServiceIT.java
M 
hyracks-fullstack/hyracks/hyracks-server/src/test/resources/NCServiceIT/cc.conf
3 files changed, 29 insertions(+), 6 deletions(-)


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

diff --git 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-nc-service/src/main/java/org/apache/hyracks/control/nc/service/NCService.java
 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-nc-service/src/main/java/org/apache/hyracks/control/nc/service/NCService.java
index 9da3502..be2b860 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-control/hyracks-nc-service/src/main/java/org/apache/hyracks/control/nc/service/NCService.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-control/hyracks-nc-service/src/main/java/org/apache/hyracks/control/nc/service/NCService.java
@@ -131,7 +131,7 @@
         }
 
         // Sets up memory parameter if it is not specified.
-        if (!jvmargs.contains(" -Xmx")) {
+        if (!jvmargs.contains("-Xmx")) {
             long ramSize = ((com.sun.management.OperatingSystemMXBean) 
osMXBean).getTotalPhysicalMemorySize();
             int proportionalRamSize = (int) Math.ceil(0.6 * ramSize / (1024 * 
1024));
             //if under 32bit JVM, use less than 1GB heap by default. otherwise 
use proportional ramsize.
diff --git 
a/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/server/test/NCServiceIT.java
 
b/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/server/test/NCServiceIT.java
index fda099e..8cf5712 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/server/test/NCServiceIT.java
+++ 
b/hyracks-fullstack/hyracks/hyracks-server/src/test/java/org/apache/hyracks/server/test/NCServiceIT.java
@@ -21,10 +21,12 @@
 import java.io.File;
 import java.io.IOException;
 import java.net.InetAddress;
+import java.util.Iterator;
 import java.util.logging.Logger;
 
 import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.node.ArrayNode;
 import junit.framework.Assert;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.http.HttpResponse;
@@ -108,15 +110,20 @@
         }
     }
 
+    private JsonNode getEndpoint(String endpoint) throws Exception {
+        ObjectMapper om = new ObjectMapper();
+        String localhost = InetAddress.getLoopbackAddress().getHostAddress();
+        String response = getHttp("http://"; + localhost + ":12345"+endpoint);
+        JsonNode result = om.readTree(response);
+        JsonNode nodes = result.get("result");
+        return nodes;
+    }
+
     @Test
     public void IsNodelistCorrect() throws Exception {
         // Ping the nodelist HTTP API
 
-        ObjectMapper om = new ObjectMapper();
-        String localhost = InetAddress.getLoopbackAddress().getHostAddress();
-        String response = getHttp("http://"; + localhost + ":12345/rest/nodes");
-        JsonNode result = om.readTree(response);
-        JsonNode nodes = result.get("result");
+        JsonNode nodes = getEndpoint("/rest/nodes");
         int numNodes = nodes.size();
         Assert.assertEquals("Wrong number of nodes!", 2, numNodes);
         for (int i = 0; i < nodes.size(); i++) {
@@ -129,6 +136,21 @@
         }
     }
 
+    @Test
+    public void isXmxOverrideCorrect() throws Exception {
+        ArrayNode inputArgs = (ArrayNode) 
getEndpoint("/rest/nodes/red").get("input-arguments");
+        for (Iterator<JsonNode> it = inputArgs.elements(); it.hasNext(); ) {
+            String s = it.next().asText();
+            if(s.startsWith("-Xmx") && s.endsWith("m")){
+                String digits = s.substring(4,8);
+                Assert.assertEquals("1234",digits);
+            }
+        }
+
+
+
+    }
+
     public static void main(String[] args) throws Exception {
         try {
             setUp();
diff --git 
a/hyracks-fullstack/hyracks/hyracks-server/src/test/resources/NCServiceIT/cc.conf
 
b/hyracks-fullstack/hyracks/hyracks-server/src/test/resources/NCServiceIT/cc.conf
index 69676f7..419b8ca 100644
--- 
a/hyracks-fullstack/hyracks/hyracks-server/src/test/resources/NCServiceIT/cc.conf
+++ 
b/hyracks-fullstack/hyracks/hyracks-server/src/test/resources/NCServiceIT/cc.conf
@@ -18,6 +18,7 @@
 [nc/red]
 address = 127.0.0.1
 #jvm.args=-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5006
+jvm.args= -Xmx1234m
 
 [nc/blue]
 address = 127.0.0.1

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I7e59be72fcc9aea3c315c2cee5339c1c7573ef51
Gerrit-PatchSet: 1
Gerrit-Project: asterixdb
Gerrit-Branch: master
Gerrit-Owner: Ian Maxon <[email protected]>

Reply via email to