Seu tipo não é consistente, na chamada da API o tipo é my_type
curl -XPUT http://localhost:9200/my_index/_mapping/my_type
então se torna sale_test na mensagem JSON.
Ter um tipo consistente resolverá seu 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" }
}
}
}'
Aqui você tem um novo índice e um novo tipo :
curl -XGET http://localhost:9200/dgses/sale_test_river/_mapping
Corrigir o índice e o tipo me 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"
}
}
}
}
}
}