[365] | 1 | #!/bin/sh |
---|
| 2 | |
---|
| 3 | ES_CLASSPATH=$ES_CLASSPATH:$ES_HOME/lib/elasticsearch-0.19.8.jar:$ES_HOME/lib/*:$ES_HOME/lib/sigar/* |
---|
| 4 | |
---|
| 5 | if [ "x$ES_MIN_MEM" = "x" ]; then |
---|
| 6 | ES_MIN_MEM=256m |
---|
| 7 | fi |
---|
| 8 | if [ "x$ES_MAX_MEM" = "x" ]; then |
---|
| 9 | ES_MAX_MEM=1g |
---|
| 10 | fi |
---|
| 11 | if [ "x$ES_HEAP_SIZE" != "x" ]; then |
---|
| 12 | ES_MIN_MEM=$ES_HEAP_SIZE |
---|
| 13 | ES_MAX_MEM=$ES_HEAP_SIZE |
---|
| 14 | fi |
---|
| 15 | |
---|
| 16 | # min and max heap sizes should be set to the same value to avoid |
---|
| 17 | # stop-the-world GC pauses during resize, and so that we can lock the |
---|
| 18 | # heap in memory on startup to prevent any of it from being swapped |
---|
| 19 | # out. |
---|
| 20 | JAVA_OPTS="$JAVA_OPTS -Xms${ES_MIN_MEM}" |
---|
| 21 | JAVA_OPTS="$JAVA_OPTS -Xmx${ES_MAX_MEM}" |
---|
| 22 | |
---|
| 23 | # new generation |
---|
| 24 | if [ "x$ES_HEAP_NEWSIZE" != "x" ]; then |
---|
| 25 | JAVA_OPTS="$JAVA_OPTS -Xmn${ES_HEAP_NEWSIZE}" |
---|
| 26 | fi |
---|
| 27 | |
---|
| 28 | # reduce the per-thread stack size |
---|
| 29 | JAVA_OPTS="$JAVA_OPTS -Xss256k" |
---|
| 30 | |
---|
| 31 | # set to headless, just in case |
---|
| 32 | JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true" |
---|
| 33 | |
---|
| 34 | # Force the JVM to use IPv4 stack |
---|
| 35 | # JAVA_OPTS="$JAVA_OPTS -Djava.net.preferIPv4Stack=true" |
---|
| 36 | |
---|
| 37 | # Enable aggressive optimizations in the JVM |
---|
| 38 | # - Disabled by default as it might cause the JVM to crash |
---|
| 39 | # JAVA_OPTS="$JAVA_OPTS -XX:+AggressiveOpts" |
---|
| 40 | |
---|
| 41 | JAVA_OPTS="$JAVA_OPTS -XX:+UseParNewGC" |
---|
| 42 | JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC" |
---|
| 43 | |
---|
| 44 | JAVA_OPTS="$JAVA_OPTS -XX:CMSInitiatingOccupancyFraction=75" |
---|
| 45 | JAVA_OPTS="$JAVA_OPTS -XX:+UseCMSInitiatingOccupancyOnly" |
---|
| 46 | |
---|
| 47 | # When running under Java 7 |
---|
| 48 | #JAVA_OPTS="$JAVA_OPTS -XX:+UseCondCardMark" |
---|
| 49 | |
---|
| 50 | # GC logging options -- uncomment to enable |
---|
| 51 | # JAVA_OPTS="$JAVA_OPTS -XX:+PrintGCDetails" |
---|
| 52 | # JAVA_OPTS="$JAVA_OPTS -XX:+PrintGCTimeStamps" |
---|
| 53 | # JAVA_OPTS="$JAVA_OPTS -XX:+PrintClassHistogram" |
---|
| 54 | # JAVA_OPTS="$JAVA_OPTS -XX:+PrintTenuringDistribution" |
---|
| 55 | # JAVA_OPTS="$JAVA_OPTS -XX:+PrintGCApplicationStoppedTime" |
---|
| 56 | # JAVA_OPTS="$JAVA_OPTS -Xloggc:/var/log/elasticsearch/gc.log" |
---|
| 57 | |
---|
| 58 | # Causes the JVM to dump its heap on OutOfMemory. |
---|
| 59 | JAVA_OPTS="$JAVA_OPTS -XX:+HeapDumpOnOutOfMemoryError" |
---|
| 60 | # The path to the heap dump location, note directory must exists and have enough |
---|
| 61 | # space for a full heap dump. |
---|
| 62 | #JAVA_OPTS="$JAVA_OPTS -XX:HeapDumpPath=$ES_HOME/logs/heapdump.hprof" |
---|