Update mapping – How to solve this Elasticsearch error

Opster Team

Aug-23, Version: 6.8-8.9

Briefly, this error occurs when there’s an attempt to update the mapping of an existing field in Elasticsearch. Elasticsearch does not allow changes to the existing field types or modifying the data in existing fields. To resolve this issue, you can create a new index with the correct mappings and reindex the data. Alternatively, you can add a new field with the correct mapping to the existing index, then reindex the data to the new field.

In addition we recommend you run the Elasticsearch Template Optimizer to fix problems in your data modeling.

It will analyze your templates to detect issues and improve search performance, reduce indexing bottlenecks and optimize storage utilization. The Template Optimizer is free and requires no installation.

Log Context

Log “{} update_mapping [{}]” classname is MetadataMappingService.java.
We extracted the following from Elasticsearch source code for those seeking an in-depth context :

                        updatedMapping = true;
                        // use the merged mapping source
                        if (logger.isDebugEnabled()) {
                            logger.debug("{} update_mapping [{}] with source [{}]"; index; mergedMapper.type(); updatedSource);
                        } else if (logger.isInfoEnabled()) {
                            logger.info("{} update_mapping [{}]"; index; mergedMapper.type());
                        }

                    }
                } else {
                    updatedMapping = true;

 

How helpful was this guide?

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?