ElasticSearch retorna documento na pesquisa, mas não em GET
Estou pesquisando documentos no meu índice e, posteriormente, tentando obter alguns deles_id
. Apesar de receber um conjunto de resultados, alguns dos documentos não podem ser recuperados com um simples get. Pior ainda, POSSO obter o mesmo documento com uma pesquisa de URI em que?_id:<the id>
Apenas por exemplo, executando um GET simples
curl -XGET 'http://localhost:9200/keepbusy_process__issuer_application/KeepBusy__Activities__Activity/neHSKSBCSv-OyAYn3IFcew'
Dá-me o resultado:
{
"_index" : "keepbusy_process__issuer_application",
"_type" : "KeepBusy__Activities__Activity",
"_id" : "neHSKSBCSv-OyAYn3IFcew",
"exists" : false
}
Mas se eu fizer uma pesquisa com o mesmo _id:
curl -XGET 'http://localhost:9200/keepbusy_process__issuer_application/KeepBusy__Activities__Activity/_search?q=_id:neHSKSBCSv-OyAYn3IFcew'
Eu recebo o resultado esperado:
{
"took": 2,
"timed_out": false,
"_shards": {
"total": 5,
"successful": 5,
"failed": 0
},
"hits": {
"total": 1,
"max_score": 1.0,
"hits": [
{
"_index": "keepbusy_process__issuer_application",
"_type": "KeepBusy__Activities__Activity",
"_id": "neHSKSBCSv-OyAYn3IFcew",
"_score": 1.0,
"_source": {
"template_uid": "KeepBusy__Activities__Activity.create application",
"name": "create application",
"updated_at": "2014-01-08T10:02:33-05:00",
"updated_at_ms": 1389193353975
}
}
]
}
}
Estou indexando documentos através da API Ruby da maca e, imediatamente após a indexação, estou fazendo uma atualização. Minha configuração local é2 nós. Estou correndov0.90.9
Não há nada óbvio nos logs por que isso deve falhar. Reiniciei o cluster e tudo parece começar corretamente, mas o resultado é o mesmo.
Há algo que está faltando ou alguma forma de diagnosticar ainda mais esse problema?