Fixing ElasticSearch 'No handler for type [int] declared on field ...'
Problem:
You want to create an index with a custom mapping in ElasticSearch but you see an error message like this:
elasticsearch.exceptions.RequestError: RequestError(400, 'mapper_parsing_exception', 'No handler for type [int] declared on field [id]')
Solution
You likely have a mapping like
"id": {
"type": "int"
}
in your mapping properties
.
The issue here is int
: ElasticSearch uses integer
as type of integers, not int
!
In order to fix the issue, change the property to
"id": {
"type": "integer"
}
and retry creating the index.