Il tuo tipo non è coerente, nella chiamata API il tipo è mio_tipo
curl -XPUT http://localhost:9200/my_index/_mapping/my_type
quindi diventa sale_test nel messaggio JSON.
Avere un tipo coerente risolverà il tuo problema:
curl -XPUT http://localhost:9200/my_index/_mapping/sale_test -d '
{
"sale_test": {
"properties": {
"Client": {"type": "string", "index": "not_analyzed" },
"OfferRGU": { "type": "long" },
"SaleDate": { "type": "date", "format": "dateOptionalTime" },
"State": { "type": "string" }
}
}
}'
Qui hai entrambi un nuovo indice e un nuovo tipo :
curl -XGET http://localhost:9200/dgses/sale_test_river/_mapping
La correzione dell'indice e del tipo mi dà:
curl -XGET http://localhost:9200/my_index/sale_test/_mapping?pretty
{
"myindex" : {
"mappings" : {
"sale_test" : {
"properties" : {
"Client" : {
"type" : "string",
"index" : "not_analyzed"
},
"OfferRGU" : {
"type" : "long"
},
"SaleDate" : {
"type" : "date",
"format" : "dateOptionalTime"
},
"State" : {
"type" : "string"
}
}
}
}
}
}