Details
-
Bug
-
Status: Done
-
Major
-
Resolution: Done
-
None
-
None
Description
When setting the heap size in the MPack, the default settings defined by Elasticsearch are still carried through. This results in two sets of -Xms and -Xmx settings passed to the JVM running Elasticsearch.
[2017-12-04T15:58:12,385][INFO ][o.e.n.Node ] [ubuntu1] JVM arguments [-Xms2g, -Xmx2g, -XX:+UseConcMarkSweepGC, -XX:CMSInitiatingOccupancyFraction=75, -XX:+UseCMSInitiatingOccupancyOnly, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -Djdk.io.permissionsUseCanonicalPath=true, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j.skipJansi=true, -XX:+HeapDumpOnOutOfMemoryError, -verbose:gc, -Xloggc:/var/log/elasticsearch/elasticsearch_gc.log, -XX:-CMSConcurrentMTEnabled, -XX:+PrintGCDateStamps, -XX:+PrintGCDetails, -XX:+PrintGCTimeStamps, -XX:ErrorFile=/var/log/elasticsearch/elasticsearch_err.log, -XX:ParallelGCThreads=8, -Xms512m, -Xmx512m, -Des.path.home=/usr/share/elasticsearch]
I am not sure which setting the JVM chooses to keep or if the behavior is well-defined in this scenario. Either way, its confusing for a user.
It seems that in ES 5.x the preferred method of setting the heap size is in `/etc/elasticsearch/jvm.options`. This is where the additional settings are originating from. If you comment out or delete the settings in this file, things work as expected.
Attachments
Issue Links
- links to