# Inplace Mapping Update for Index

**URL:** <https://discuss.elastic.co/t/inplace-mapping-update-for-index/375712>\
**Category:** Elasticsearch\
**Created:** [March 11, 2025, 2:16pm UTC](https://discuss.elastic.co/t/inplace-mapping-update-for-index/375712 "2025-03-11T14:16:47Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Aditya\_Teltia](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/aditya_teltia/32/122447_2.png) [@Aditya\_Teltia](https://discuss.elastic.co/u/Aditya_Teltia)\
**Post date:** [March 11, 2025, 2:16pm UTC](https://discuss.elastic.co/t/inplace-mapping-update-for-index/375712/1 "2025-03-11T14:16:47Z")

</div>

Hi Team,

Wanted to understand, if there is any specific reason why Elasticsearch doesn't allow updating mapping of index in place for existing fields?  
Is this anti pattern? Or Is there any particular reason? Wasn't able to find anything regarding the same.

---

<div class="post-metadata">

**Author:** ![stephenb](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stephenb/32/40856_2.png) [@stephenb](https://discuss.elastic.co/u/stephenb)\
**Post date:** [March 11, 2025, 2:51pm UTC](https://discuss.elastic.co/t/inplace-mapping-update-for-index/375712/2 "2025-03-11T14:51:52Z")

</div>

Hi @Aditya_Teltia

In general You can add mappings to an index but you can not remove or update existing mappings as this would break the ability to access the underlying data as the data is stored with the correct mapping / type / definition as it is indexed / stored.

You can create a new index with the new mapping and then `_reindex` if you want.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [March 11, 2025, 3:46pm UTC](https://discuss.elastic.co/t/inplace-mapping-update-for-index/375712/3 "2025-03-11T15:46:33Z")

</div>

Lucene writes immutable files which means that updating anything would break that concept.
