KARAF-3945 - do not set permgen settings in java 8

Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/66cc65fb
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/66cc65fb
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/66cc65fb

Branch: refs/heads/karaf-3.0.x
Commit: 66cc65fbbc32a576ecc0ed35a5255b28718d04fc
Parents: f4997c2
Author: Jonathan Anstey <[email protected]>
Authored: Thu Aug 20 13:14:26 2015 -0230
Committer: Jonathan Anstey <[email protected]>
Committed: Thu Aug 20 13:14:26 2015 -0230

----------------------------------------------------------------------
 .../main/filtered-resources/resources/bin/client  | 18 ++++++++++--------
 .../filtered-resources/resources/bin/instance     | 18 ++++++++++--------
 .../main/filtered-resources/resources/bin/shell   | 18 ++++++++++--------
 .../src/main/resources/resources/bin/karaf        | 18 ++++++++++--------
 4 files changed, 40 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/66cc65fb/assemblies/features/framework/src/main/filtered-resources/resources/bin/client
----------------------------------------------------------------------
diff --git 
a/assemblies/features/framework/src/main/filtered-resources/resources/bin/client
 
b/assemblies/features/framework/src/main/filtered-resources/resources/bin/client
index 7cf3d04..3215632 100755
--- 
a/assemblies/features/framework/src/main/filtered-resources/resources/bin/client
+++ 
b/assemblies/features/framework/src/main/filtered-resources/resources/bin/client
@@ -233,14 +233,16 @@ setupDefaults() {
 
     #Set the JVM_VENDOR specific JVM flags
     if [ "$JVM_VENDOR" = "SUN" ]; then
-        #
-        # Check some easily accessible MIN/MAX params for JVM mem usage
-        #
-        if [ "x$JAVA_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS -XX:PermSize=$JAVA_PERM_MEM"
-        fi
-        if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+        # permgen was removed in Java 8
+        VERSION=`$JAVA -version 2>&1 | egrep '"([0-9].[0-9]\..*[0-9]).*"' | 
awk '{print substr($3,2,length($3)-2)}' | awk '{print substr($1, 3, 3)}' | sed 
-e 's;\.;;g'`
+        if [ "$VERSION" -lt "80" ]; then
+            # Check some easily accessible MIN/MAX params for JVM mem usage
+            if [ "x$JAVA_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:PermSize=$JAVA_PERM_MEM"
+            fi
+            if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+            fi
         fi
         DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS 
-Dcom.sun.management.jmxremote"
     elif [ "$JVM_VENDOR" = "IBM" ]; then

http://git-wip-us.apache.org/repos/asf/karaf/blob/66cc65fb/assemblies/features/framework/src/main/filtered-resources/resources/bin/instance
----------------------------------------------------------------------
diff --git 
a/assemblies/features/framework/src/main/filtered-resources/resources/bin/instance
 
b/assemblies/features/framework/src/main/filtered-resources/resources/bin/instance
index 7e3bb58..1ed5244 100755
--- 
a/assemblies/features/framework/src/main/filtered-resources/resources/bin/instance
+++ 
b/assemblies/features/framework/src/main/filtered-resources/resources/bin/instance
@@ -255,14 +255,16 @@ setupDefaults() {
 
     #Set the JVM_VENDOR specific JVM flags
     if [ "$JVM_VENDOR" = "SUN" ]; then
-        #
-        # Check some easily accessible MIN/MAX params for JVM mem usage
-        #
-        if [ "x$JAVA_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS -XX:PermSize=$JAVA_PERM_MEM"
-        fi
-        if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+        # permgen was removed in Java 8
+        VERSION=`$JAVA -version 2>&1 | egrep '"([0-9].[0-9]\..*[0-9]).*"' | 
awk '{print substr($3,2,length($3)-2)}' | awk '{print substr($1, 3, 3)}' | sed 
-e 's;\.;;g'`
+        if [ "$VERSION" -lt "80" ]; then
+            # Check some easily accessible MIN/MAX params for JVM mem usage
+            if [ "x$JAVA_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:PermSize=$JAVA_PERM_MEM"
+            fi
+            if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+            fi
         fi
         DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS 
-Dcom.sun.management.jmxremote"
     elif [ "$JVM_VENDOR" = "IBM" ]; then

http://git-wip-us.apache.org/repos/asf/karaf/blob/66cc65fb/assemblies/features/framework/src/main/filtered-resources/resources/bin/shell
----------------------------------------------------------------------
diff --git 
a/assemblies/features/framework/src/main/filtered-resources/resources/bin/shell 
b/assemblies/features/framework/src/main/filtered-resources/resources/bin/shell
index 8b73e63..cfe2ce8 100755
--- 
a/assemblies/features/framework/src/main/filtered-resources/resources/bin/shell
+++ 
b/assemblies/features/framework/src/main/filtered-resources/resources/bin/shell
@@ -255,14 +255,16 @@ setupDefaults() {
 
     #Set the JVM_VENDOR specific JVM flags
     if [ "$JVM_VENDOR" = "SUN" ]; then
-        #
-        # Check some easily accessible MIN/MAX params for JVM mem usage
-        #
-        if [ "x$JAVA_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS -XX:PermSize=$JAVA_PERM_MEM"
-        fi
-        if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+        # permgen was removed in Java 8
+        VERSION=`$JAVA -version 2>&1 | egrep '"([0-9].[0-9]\..*[0-9]).*"' | 
awk '{print substr($3,2,length($3)-2)}' | awk '{print substr($1, 3, 3)}' | sed 
-e 's;\.;;g'`
+        if [ "$VERSION" -lt "80" ]; then
+            # Check some easily accessible MIN/MAX params for JVM mem usage
+            if [ "x$JAVA_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:PermSize=$JAVA_PERM_MEM"
+            fi
+            if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+            fi
         fi
         DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS 
-Dcom.sun.management.jmxremote"
     elif [ "$JVM_VENDOR" = "IBM" ]; then

http://git-wip-us.apache.org/repos/asf/karaf/blob/66cc65fb/assemblies/features/framework/src/main/resources/resources/bin/karaf
----------------------------------------------------------------------
diff --git 
a/assemblies/features/framework/src/main/resources/resources/bin/karaf 
b/assemblies/features/framework/src/main/resources/resources/bin/karaf
index adac2df..5353cd4 100755
--- a/assemblies/features/framework/src/main/resources/resources/bin/karaf
+++ b/assemblies/features/framework/src/main/resources/resources/bin/karaf
@@ -277,14 +277,16 @@ setupDefaults() {
 
     #Set the JVM_VENDOR specific JVM flags
     if [ "$JVM_VENDOR" = "SUN" ]; then
-        #
-        # Check some easily accessible MIN/MAX params for JVM mem usage
-        #
-        if [ "x$JAVA_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS -XX:PermSize=$JAVA_PERM_MEM"
-        fi
-        if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
-            DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+        # permgen was removed in Java 8
+        VERSION=`$JAVA -version 2>&1 | egrep '"([0-9].[0-9]\..*[0-9]).*"' | 
awk '{print substr($3,2,length($3)-2)}' | awk '{print substr($1, 3, 3)}' | sed 
-e 's;\.;;g'`
+        if [ "$VERSION" -lt "80" ]; then
+            # Check some easily accessible MIN/MAX params for JVM mem usage
+            if [ "x$JAVA_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:PermSize=$JAVA_PERM_MEM"
+            fi
+            if [ "x$JAVA_MAX_PERM_MEM" != "x" ]; then
+                DEFAULT_JAVA_OPTS="$DEFAULT_JAVA_OPTS 
-XX:MaxPermSize=$JAVA_MAX_PERM_MEM"
+            fi
         fi
         DEFAULT_JAVA_OPTS="-server $DEFAULT_JAVA_OPTS 
-Dcom.sun.management.jmxremote"
     elif [ "$JVM_VENDOR" = "IBM" ]; then

Reply via email to