首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >solr group.field空指针异常

solr group.field空指针异常
EN

Stack Overflow用户
提问于 2013-02-07 17:16:29
回答 1查看 960关注 0票数 0

我在使用solr的组特性时遇到了问题。我就是不能使用这个功能。这是对问题的描述。

我使用的组字段定义如下。

字段name="clusterid“type=字符串”indexed=“真”stored=“真”multiValued=“false

索引的"clusterid“字段具有有效值。

最初,我尝试在上面的字段中使用使用"group“特性。我开始得到"HTTP状态500内部服务器错误.“假设参数的语法或排序可能是一个问题,我决定使用firefox浏览器测试相同的特性。

代码语言:javascript
复制
.../solr/select/?q=title%3Acomputer

使用有效的丛集产生一组很好的结果。

但是,当我试图使用clusterid字段对结果进行分组时,我会得到一个空指针异常。下面是用于分组的url

代码语言:javascript
复制
.../solr/select/?q=title%3Acomputer&group=true&group.field=clusterid

他们的反应是

类型状态报告

org.apache.solr.handler.clustering.ClusteringComponent.process(ClusteringComponent.java:89) at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:186) at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129) at org.apache.solr.core.SolrCore.execute(SolrCore.java:1376) at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:365) at org.apache的message null java.lang.NullPointerException。solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:260) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489) at java.lang.Thread.run(Thread.java:662)

注意:我在Windows上使用solr版本3.6.2。solrconfig文件仅对默认内存设置(增加值)进行更改。

当我尝试使用多值字段作为组字段时,响应消息非常清楚," multivalued“字段不能用于分组。当我使用非字符串字段进行测试时,我再次得到了非字符串字段的响应,等等。

但是,当提供string类型的字段( clusterid或任何其他字符串类型的字段)时--空指针异常将被抛出。

我是否遗漏了任何显而易见的内容(模式或solrconfig文件)?

EN

回答 1

Stack Overflow用户

发布于 2017-05-25 19:42:02

使用Solr 6.3我也面临着同样的问题。似乎群集组件(显然正在使用)无法从组响应中提取它所需的数据。我发现的唯一解决办法是启用高亮显示,然后集群就会工作;但是这会带来很大的性能损失。但是,如果您的结果大小很小,这可能是您的一个选择;对于更大的结果(> 200-300个文档),集群似乎要花费更多的时间而不是高亮显示。我正在使用Lingo算法,也许使用STC会更好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14757022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档