Skip to content

Dealing with incompatible mapping changes #9443

@clintongormley

Description

@clintongormley

We're in the process of removing some mapping functionality such as the _analyzer field (#9279), the _boost field (#8875), and the type-level analyzer settings (#8874).

In all these cases, we need to:

  • inform the user that the old settings no longer works
  • allow the user to continue using their data without reindexing, even though the old settings no longer have any effect

I think we should throw an exception by default, so that the user knows that there is a problem (rather than just silently changing behaviour), but we need to provide some way for the user to say "go ahead and use this index anyway".

Possibilities:

  • apply a setting to the closed index to say "ignore the old setting", then allow opening the index
  • perhaps just upgrade the mapping to remove the setting if the user manually opens the index (or add a "force" flag to the open API?)
  • add functionality to the upgrade API to make the required mapping changes

any preferences or better ideas?

Metadata

Metadata

Labels

:Search Foundations/MappingIndex mappings, including merging and defining field typesTeam:Search FoundationsMeta label for the Search Foundations team in Elasticsearch

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions