Java API中响应对象的Elasticsearch RangeFacet错误

时间:2014-06-10 10:04:24

标签: elasticsearch

我为一个字段(CREDITS)创建了一个范围构面,并尝试使用匹配所有查询进行搜索并获得如下响应 -

facetCreditRange =rangeFacet("Credit").field("CREDITS").addUnboundedFrom(5).addRange(5,10).addUnboundedTo(10);
SearchResponse response1 = client.prepareSearch(index).setTypes(type).addFacet(facetCreditRange).setQuery(matchAllQuery()).execute().actionGet();

当我运行此代码时,它会给我错误 -

  

< [阿森纳]消息   没有完全读取(响应)[194]处理程序   org.elasticsearch.action.TransportActionNodeProxy$1@fc63c33,错误   [true],重置>        org.elasticsearch.transport.TransportSerializationException:失败   从流中反序列化异常响应   org.elasticsearch.transport.netty.MessageChannelHandler.handlerResponseError(MessageChannelHandler.java:169)     在   org.elasticsearch.transport.netty.MessageChannelHandler.messageReceived(MessageChannelHandler.java:123)     在   org.elasticsearch.common.netty.channel.SimpleChannelUpstreamHandler.handleUpstream(SimpleChannelUpstreamHandler.j

等等 请让我知道如何为'Credits'字段创建范围方面,其范围不同,如'0-5',5-10,10-15。

1 个答案:

答案 0 :(得分:0)

你没有交换addUnboundedFrom和addUnboundedTo的值吗?

我在这里读到的是你需要3个范围..

  • 大于5
  • 5到10之间
  • 低于10

这些范围是重叠的......也许这是你问题的原因?