# Elasticsearch node won't start after updating index setting with index.mapper.dynamic

**URL:** <https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101>\
**Category:** Elasticsearch\
**Created:** [January 15, 2024, 6:09pm UTC](https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101 "2024-01-15T18:09:56Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![dslavescu](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@dslavescu](https://discuss.elastic.co/u/dslavescu)\
**Post date:** [January 15, 2024, 6:09pm UTC](https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101/1 "2024-01-15T18:09:56Z")

</div>

Hello,

I have an Elasticsearch cluster with version 7.17.2. I updated one of my indices with the following setting:

`PUT /testindex/_settings { "index.mapper.dynamic": true }`  
and everything was OK, my settings were updated successfully.

After some time, i restarted the elasticsearch service on one of my nodes but the service doesn't start. In the logs i can see this error:

```auto
[2024-01-15T17:53:03,766][ERROR][o.e.b.ElasticsearchUncaughtExceptionHandler] [pr-esaas-fe-p192c254md-01] uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.IllegalStateException: Failed to parse mappings for index [[testindex/Qj8OReW1QSGEKucNcYwCrw]]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:170) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:157) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:77) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:112) ~[elasticsearch-cli-7.17.2.jar:7.17.2]
	at org.elasticsearch.cli.Command.main(Command.java:77) ~[elasticsearch-cli-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:122) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:80) ~[elasticsearch-7.17.2.jar:7.17.2]
Caused by: java.lang.IllegalStateException: Failed to parse mappings for index [[testindex/Qj8OReW1QSGEKucNcYwCrw]]
	at org.elasticsearch.cluster.metadata.IndexMetadataVerifier.checkMappingsCompatibility(IndexMetadataVerifier.java:191) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.cluster.metadata.IndexMetadataVerifier.verifyIndexMetadata(IndexMetadataVerifier.java:87) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.gateway.GatewayMetaState.upgradeMetadata(GatewayMetaState.java:279) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.gateway.GatewayMetaState.upgradeMetadataForNode(GatewayMetaState.java:265) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.gateway.GatewayMetaState.start(GatewayMetaState.java:178) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.node.Node.start(Node.java:1188) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Bootstrap.start(Bootstrap.java:335) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:443) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:166) ~[elasticsearch-7.17.2.jar:7.17.2]
	... 6 more
Caused by: java.lang.IllegalArgumentException: Setting index.mapper.dynamic was removed after version 6.0.0
	at org.elasticsearch.index.mapper.MapperService.<init>(MapperService.java:208) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.cluster.metadata.IndexMetadataVerifier.checkMappingsCompatibility(IndexMetadataVerifier.java:177) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.cluster.metadata.IndexMetadataVerifier.verifyIndexMetadata(IndexMetadataVerifier.java:87) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.gateway.GatewayMetaState.upgradeMetadata(GatewayMetaState.java:279) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.gateway.GatewayMetaState.upgradeMetadataForNode(GatewayMetaState.java:265) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.gateway.GatewayMetaState.start(GatewayMetaState.java:178) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.node.Node.start(Node.java:1188) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Bootstrap.start(Bootstrap.java:335) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:443) ~[elasticsearch-7.17.2.jar:7.17.2]
	at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:166) ~[elasticsearch-7.17.2.jar:7.17.2]
	... 6 more

```

Every action performed on this index will result in an error stating that "Setting index.mapper.dynamic was removed after version 6.0.0".  
So, i am able to successfully add this setting, but i am not able to remove it or start the service on this node again!!  
I also deleted the index from the cluster, still no success in starting elasticsearch service on this node. It seems there is no way to recover it.  
what else can i do? is a production cluster, so i am not able to easily upgrade/perform important changes. Please help!

---

<div class="post-metadata">

**Author:** ![leandrojmp](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/leandrojmp/32/107231_2.png) [@leandrojmp](https://discuss.elastic.co/u/leandrojmp)\
**Post date:** [January 15, 2024, 6:57pm UTC](https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101/2 "2024-01-15T18:57:24Z")

</div>

Unfortunately I'm not sure how you can recover from this state.

Being able to add this setting on 7.17.X is a bug that is tracked in this [github issue](https://github.com/elastic/elasticsearch/issues/96075), but there is no fix for it yet.

@DavidTurner sorry to tag you, but is there any way to recove the node in this case?

---

<div class="post-metadata">

**Author:** ![DavidTurner](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/davidturner/32/22453_2.png) [@DavidTurner](https://discuss.elastic.co/u/DavidTurner)\
**Post date:** [January 16, 2024, 10:10am UTC](https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101/3 "2024-01-16T10:10:59Z")

</div>

I don't think so unfortunately, but as long as it's just one node (and the cluster health is not `red`) then you can delete the data path contents and it'll start as a new fresh node and rejoin the cluster.

---

<div class="post-metadata">

**Author:** ![dslavescu](https://avatars.discourse-cdn.com/v4/letter/d/e19adc/32.png) [@dslavescu](https://discuss.elastic.co/u/dslavescu)\
**Post date:** [January 17, 2024, 2:53pm UTC](https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101/4 "2024-01-17T14:53:58Z")

</div>

Hello!

Thanks for the fast reply!  
I managed to recreate the node from scratch and rejoin the cluster as a new node.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [February 14, 2024, 2:54pm UTC](https://discuss.elastic.co/t/elasticsearch-node-wont-start-after-updating-index-setting-with-index-mapper-dynamic/351101/5 "2024-02-14T14:54:01Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
