Skip to content

Refactor DocValueFieldsFetchSubPhase use of deprecation logger #33572

@tomcallahan

Description

@tomcallahan

Elasticsearch version (bin/elasticsearch --version): 6.4.0

Description of the problem including expected versus actual behavior
In DocValueFieldsFetchSubPhase.java, we use the deprecation logger inside of a per-field loop, emitting a log message (and corresponding HTTP header) for each docvalue_fields item without a format parameter in an msearch query. For users running Elasticsearch behind a proxy, this has been breaking as we can emit potentially many of these headers as Kibana is used normally.

Here is an example of the offending deprecation log message:
#! Deprecation: Doc-value field [date2] is not using a format. The output will change in 7.0 when doc value fields get formatted based on mappings by default. It is recommended to pass [format=use_field_mapping] with the doc value field in order to opt in for the future behaviour and ease the migration to 7.0.

We should refactor this class so that a single warning is emitted that enumerates all offending fields.

Metadata

Metadata

Assignees

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions