119 lines
4.7 KiB
Plaintext
119 lines
4.7 KiB
Plaintext
[[breaking-changes-7.7]]
|
|
== Breaking changes in 7.7
|
|
++++
|
|
<titleabbrev>7.7</titleabbrev>
|
|
++++
|
|
|
|
This section discusses the changes that you need to be aware of when migrating
|
|
your application to Elasticsearch 7.7.
|
|
|
|
See also <<release-highlights>> and <<es-release-notes>>.
|
|
|
|
//NOTE: The notable-breaking-changes tagged regions are re-used in the
|
|
//Installation and Upgrade Guide
|
|
|
|
//tag::notable-breaking-changes[]
|
|
[discrete]
|
|
[[breaking_77_logging_changes]]
|
|
=== Logging changes
|
|
|
|
[discrete]
|
|
==== Loggers under `org.elasticsearch.action` now log at `INFO` level by default
|
|
|
|
The default log level for most loggers is `INFO`, but in earlier versions
|
|
loggers in the `org.elasticsearch.action.*` hierarchy emitted log messages at
|
|
`DEBUG` level by default. This sometimes resulted in a good deal of unnecessary
|
|
log noise. From 7.7 onwards the default log level for logger in this hierarchy
|
|
is now `INFO`, in line with most other loggers. If needed, you can recover the
|
|
pre-7.7 default behaviour by adjusting your {ref}/logging.html[logging].
|
|
|
|
[discrete]
|
|
[[breaking_77_mapping_changes]]
|
|
=== Mapping changes
|
|
|
|
[discrete]
|
|
[[stricter-mapping-validation]]
|
|
==== Validation for dynamic templates
|
|
|
|
So far misconfiguration of dynamic templates have been discovered when indexing
|
|
a document with an unmapped field only. In {es} 8.0 and later versions, dynamic mappings
|
|
have stricter validation, done at mapping update time. Invalid updates, such as using
|
|
incorrect analyzer settings or unknown field types, fail. For
|
|
indices created in {es} 7.7 and later version, the update succeeds but emits a warning.
|
|
|
|
|
|
[discrete]
|
|
[[breaking_77_settings_changes]]
|
|
=== Settings changes
|
|
|
|
[discrete]
|
|
[[deprecate-listener-thread-pool]]
|
|
==== `thread_pool.listener.size` and `thread_pool.listener.queue_size` have been deprecated
|
|
The listener thread pool is no longer used internally by Elasticsearch.
|
|
Therefore, these settings have been deprecated. You can safely remove these
|
|
settings from the configuration of your nodes.
|
|
|
|
[discrete]
|
|
[[deprecate-cluster-remote-connect]]
|
|
==== `cluster.remote.connect` is deprecated in favor of `node.remote_cluster_client`
|
|
Previously the setting `cluster.remote.connect` was used to configure whether or
|
|
not the local node is capable of acting as a remote cluster client in
|
|
cross-cluster search and cross-cluster replication. This setting is deprecated
|
|
in favor of `node.remote_cluster_client` serves the same purpose and identifies
|
|
the local node as having the `remote_cluster_client` role.
|
|
|
|
[discrete]
|
|
[[deprecate-missing-realm-order]]
|
|
==== Authentication realm `order` will be a required config in version 8.0.0.
|
|
|
|
The `order` config will be required in version 8.0.0 for authentication realm
|
|
configuration of any type. If the `order` config is missing for a realm, the node
|
|
will fail to start.
|
|
|
|
[discrete]
|
|
[[deprecate-duplicated-realm-orders]]
|
|
==== Authentication realm `order` uniqueness will be enforced in version 8.0.0.
|
|
|
|
The `order` config of authentication realms must be unique in version 8.0.0.
|
|
If you configure more than one realm of any type with the same order, the node will fail to start.
|
|
|
|
[discrete]
|
|
[[deprecate-insecure-monitoring-password]]
|
|
==== Deprecation of insecure monitoring password setting
|
|
|
|
The `auth.password` setting for the monitoring HTTP exporter has been deprecated and will be
|
|
removed in version 8.0.0. Please use the `auth.secure_password` setting instead.
|
|
|
|
[discrete]
|
|
[[breaking_77_search_changes]]
|
|
=== Search changes
|
|
|
|
[discrete]
|
|
==== Consistent rounding of range queries on `date_range` fields
|
|
`range` queries on `date_range` field currently can have slightly differently
|
|
boundaries than their equivalent query on a pure `date` field. This can e.g.
|
|
happen when using date math or dates that don't specify up to the last
|
|
millisecond. While queries on `date` field round up to the latest millisecond
|
|
for `gt` and `lte` boundaries, the same queries on `date_range` fields didn't
|
|
do this. The behavior is now the same for both field types like documented in
|
|
{ref}/query-dsl-range-query.html#range-query-date-math-rounding[Date math and rounding].
|
|
|
|
[discrete]
|
|
==== Pipeline aggregation validation errors
|
|
The pipeline aggregation validation has been moved to the coordinating node.
|
|
Those errors that used to return HTTP 500s/Internal Server Errors now return
|
|
400/Bad Request and we now return a list of validation errors rather than the
|
|
first one we encounter.
|
|
|
|
[discrete]
|
|
[[breaking_77_highlighters_changes]]
|
|
=== Highlighters changes
|
|
|
|
[discrete]
|
|
==== Ignored keyword values are no longer highlighted
|
|
If a keyword value was ignored during indexing because of its length
|
|
(`ignore_above` parameter was applied), {es} doesn't attempt to
|
|
highlight it anymore, which means no highlights are produced for
|
|
ignored values.
|
|
//end::notable-breaking-changes[]
|