Mapper conflict


#1

I updated my ES v1.5 to 2.4 and I am getting so many errors about mapper conflicts. I would like to know if it is possible to change the mapper field of every index before starting the elasticsearch service or ignore all the data that has errors in other to get elasticsearch up.

Thanks

Error Example:
Exception in thread "main" java.lang.IllegalStateException: unable to upgrade the mappings for the index [wordlist], reason: [Mapper for [_id] conflicts with existing mapping in other types:
[mapper [_id] has different [index] values]]
Likely root cause: java.lang.IllegalArgumentException: Mapper for [_id] conflicts with existing mapping in other types:
[mapper [_id] has different [index] values]
at org.elasticsearch.index.mapper.FieldTypeLookup.checkCompatibility(FieldTypeLookup.java:153)
at org.elasticsearch.index.mapper.FieldTypeLookup.copyAndAddAll(FieldTypeLookup.java:115)
at org.elasticsearch.index.mapper.MapperService.merge(MapperService.java:381)
at org.elasticsearch.index.mapper.MapperService.merge(MapperService.java:320)
at org.elasticsearch.cluster.metadata.MetaDataIndexUpgradeService.checkMappingsCompatibility(MetaDataIndexUpgradeService.java:302)
at org.elasticsearch.cluster.metadata.MetaDataIndexUpgradeService.upgradeIndexMetaData(MetaDataIndexUpgradeService.java:116)
at org.elasticsearch.gateway.GatewayMetaState.pre20Upgrade(GatewayMetaState.java:228)
at org.elasticsearch.gateway.GatewayMetaState.(GatewayMetaState.java:87)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at <<>>
at org.elasticsearch.node.Node.(Node.java:213)
at org.elasticsearch.node.Node.(Node.java:140)
at org.elasticsearch.node.NodeBuilder.build(NodeBuilder.java:143)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:194)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:286)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)


(Mark Walkom) #2

You should read https://www.elastic.co/guide/en/elasticsearch/reference/2.4/breaking_20_mapping_changes.html#_conflicting_field_mappings


#3

I can not change any mapping because the service is down and the link that you provided does not show a solution.


#4

I removed all the docs located in /var/lib/elasticsearch/YOUR_NODE/nodes/. Now my Es is up


(system) #5