This list summarizes the most important breaking changes in Elasticsearch 7.11.1. For the complete list, go to Elasticsearch breaking changes.
Machine learning changesedit
The trained models API parameter
for_export is now renamed to
The get trained models API no longer accepts
REST API changesedit
REST APIs that do not use a request body now return an error if a body is provided.
Several Elasticsearch REST APIs do not use a request body. In previous versions, you could provide a request body when calling these APIs, and Elasticsearch would ignore the body. These APIs now return an error if you provide a request body, even if empty.
Update your application or workflow to avoid sending unneeded request bodies in REST API requests.
Keyword fields with a custom normalizer will use the normalized form when highlighting.
Highlighters now use the same framework to load their values as the
fields section of a search response. This means that normalization
will be applied to the values of a keyword field; for example, a
field configured with a lowercase normalizer will return highlighted
snippets in lower case.
Internal fields used for text search acceleration are hidden.
Text fields can add internal subfields using extra analysis to speed up prefix and phrase searches. Previously these were exposed to the field caps API and were available for searching directly. However, they did not implement all query types and could return bad results or throw errors if used via the query DSL. These subfields are now internal only and cannot be invoked as searchable fields in queries.
The significant text aggregation now throws an error if applied to a numeric field.
The significant text aggregation could previously be applied to a fields that were defined as numeric, which made little sense and would always return an empty result. Given that applying a text-specific aggregation to a non-text field is almost certainly a mistake, this has now been changed to throw an error.
Transforms now write
group_by dates as strings.
Transforms now write dates used in a
group_by as formatted ISO strings instead
epoch_millis values. Previously constructed transforms will still use
epoch_millis values. You can configure and change the output format in the
settings of the transform.