Failed to parse value [1] as only [true] or [false] are allowed."}] Error when upgrade from 5.6 to 6.8

Hi Elastic Team,

We are trying to upgrade our Elasticsearch from 5.6 to 6.8.1. We first migrated our ES cluster from 5.6 to 6.8.1 and when we are trying to create new index from curl command we alway get error saying
Failed to parse value [1] as only [true] or [false] are allowed."}] Error when upgrade from 5.6 to 6.8
Even with a very simple index without any mapping.
curl -X PUT "localhost:9200/test/?pretty=true" -H 'Content-Type: application/json'

We try both with ?pretty=true and without ?pretty=true both get same error.

Do we miss anything from settings or should we add any parameters to the curl command?

Thank you!

It looks like you're relying on the lenient parsing of booleans that was deprecated in 5.3 (#22716), and removed in version 6 (#22200). You should have seen deprecation warnings about this usage before you upgraded.

Since this is happening at index creation time I suspect it's due to something in one of your index templates. Check these carefully for a 1 where Elasticsearch is now expecting a true or a false.

Thank you David!
So is there any log or any place where we can quickly navigate what is the field name or which index? Since we have so many index....
Or is there a way where we can specify not to apply any template when create an index?

Thank you!!

It should be in the deprecation log from before your upgrade. It might be in the server logs now too, I'm not sure. But note that I think the problem is in a template, not an index, and there should be fewer templates to look at.

Thank you David! Just follow your suggestion and it works!! Yeah! Thanks a lot!

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