我在BulkRequest中使用BulkRequest查询,其中有一组必须删除的ID。
我用:
BulkRequestBuilder bulkRequest = searchClient.prepareBulk();
for id in ids {
bulkRequest.add(searchClient.prepareDelete("indexName", "childType", id));
}
BulkResponse bulkResponse = bulkRequest.execute().actionGet();这个删除结构在ES2.2.0中有效,但在ES2.3.0中我得到了RoutingMissingException。
如果我打印bilkResponse.buildFailureMessage()并得到
[0]: index [indexName], type [childType], id [215f3228a3c53970883ae0d3b22dae6f], message [[indexName] RoutingMissingException[routing is required for [indexName]/[childType]/[215f3228a3c53970883ae0d3b22dae6f]]]我甚至没有更改现有索引的设置/映射。
可能是什么原因?
发布于 2016-03-31 07:38:33
发布于 2016-04-05 17:55:11
@rahulroc是对的。我要增加一份按时间顺序列出介绍这一特性的问题的清单:
也许更新3是导致异常出现在es-2.3.0中的原因。因此,您只需使用has_child 查询从子文档id中获取父文档。
https://stackoverflow.com/questions/36320287
复制相似问题