Breaking changes in 6.2
editBreaking changes in 6.2
editThis section discusses the changes that you need to be aware of when migrating your application to Elasticsearch 6.2.
All permission bootstrap check
editElasticsearch installs a security manager during bootstrap to mitigate the scope
of exploits in the JDK, in third-party dependencies, and in Elasticsearch itself
as well as to sandbox untrusted plugins. A custom security policy can be applied
and one permission that can be added to this policy is
java.security.AllPermission
. However, this effectively disables the security
manager. As such, granting this permission in production mode is now forbidden
via the all permission bootstrap check.
Private temporary directory
editOn Linux, previous versions of Elasticsearch defaulted to using /tmp
as the
temporary directory for the process. However, /tmp
is public so we have
elected to change the packaging so that we use a private temporary directory. If
you are upgrading from a previous version of Elasticsearch and preserve your
existing jvm.options
, you should add the line
-Djava.io.tmpdir=${ES_TMPDIR}
. It is safe to do this on all OS as we preserve
using a private temporary directory on non-Linux systems with the same
mechanism.
GC logging
editStarting in Elasticsearch 6.2.0, JVM GC logging is enabled out of
the box. This lightweight facility gives insight into GC issues. The settings
for this are in jvm.options
and default to keeping 2 GB worth
(rotating every 64 MB) of logs in the default logs directory. If you are
upgrading from a previous version of Elasticsearch and preserve your existing
jvm.options
, you should add the following GC logging settings
so that this valuable debugging information is available:
-XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -XX:+PrintGCApplicationStoppedTime -Xloggc:logs/gc.log or /var/log/elasticsearch/gc.log -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=32 -XX:GCLogFileSize=64m
If you have installed Elasticsearch from the RPM or the Debian packaging
distributions and use the default logging location use |
Rollover alias
editA rollover request in Elasticsearch 6.2.0 or later will be aborted if the same alias is found in the matching index templates. This change is to prevent the alias from pointing to multiple indices during rollover. If your index templates already contain the same alias, you should remove it by updating the index templates.