<commit_before>[[breaking-changes-6.5]]
== Breaking changes in 6.5

This section discusses the changes that you need to be aware of when migrating
your application to Elasticsearch 6.5.

* <<breaking_65_logging_changes>>

See also <<release-highlights>> and <<es-release-notes>>.

[[breaking_65_logging_changes]]
=== Logging changes

==== %node_name in logging pattern

To make the node name appear consistently in Elasticsearch's logs and to clean
up much of the internal logging code we've removed the node name from the
"marker" in the logging configuration. If you do not customize your logging
configuration file then there is nothing for you to do. If you *do* customize
your logging configuration properties then you should replace `%marker` with
`[%node_name]%marker `, including the trailing space. If you do not do so
Elasticsearch will log a warning on startup and log with the new pattern. It
will not change the logging configuration files though. You should make this
change before 7.0 because in 7.0 Elasticsearch will no longer automatically
add the node name to the logging configuration if it isn't already present.<commit_msg>* Added breaking change section for GROUP BY behavior: now it considers null or empty values as a separate group/bucket. Previously, they were ignored. * This is part of backporting of https://github.com/elastic/elasticsearch/pull/32832<commit_after>[[breaking-changes-6.5]]
== Breaking changes in 6.5

This section discusses the changes that you need to be aware of when migrating
your application to Elasticsearch 6.5.

* <<breaking_65_logging_changes>>
* <<breaking_65_sql_changes>>

See also <<release-highlights>> and <<es-release-notes>>.

[[breaking_65_logging_changes]]
=== Logging changes

==== %node_name in logging pattern

To make the node name appear consistently in Elasticsearch's logs and to clean
up much of the internal logging code we've removed the node name from the
"marker" in the logging configuration. If you do not customize your logging
configuration file then there is nothing for you to do. If you *do* customize
your logging configuration properties then you should replace `%marker` with
`[%node_name]%marker `, including the trailing space. If you do not do so
Elasticsearch will log a warning on startup and log with the new pattern. It
will not change the logging configuration files though. You should make this
change before 7.0 because in 7.0 Elasticsearch will no longer automatically
add the node name to the logging configuration if it isn't already present.

[[breaking_65_sql_changes]]
=== SQL plugin changes

==== Grouping by columns with missing values will create an additional group 

An additional group will be present in the result of requests containing a
`GROUP BY` for a column that has missing values in the returned documents.
The records with missing values in the grouped by column will be collectively
considered a single bucket.
{'fraction_non_alphanumeric': 0.059024223814397814, 'fraction_numerical': 0.012623677925622655, 'mean_word_length': 5.008196721311475, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 17, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7548950', 'n_tokens_mistral': 741, 'n_tokens_neox': 706, 'n_words': 410}