You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Yonik Seeley (JIRA)" <ji...@apache.org> on 2015/08/06 18:01:04 UTC
[jira] [Comment Edited] (SOLR-7879) Null pointer exception when
[ https://issues.apache.org/jira/browse/SOLR-7879?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14660197#comment-14660197 ]
Yonik Seeley edited comment on SOLR-7879 at 8/6/15 4:00 PM:
------------------------------------------------------------
Actually, I think it has something to do with the result set, this is the code:
{code}
SolrQuery solrQuery = new SolrQuery();
filterContains = filterContains.toLowerCase();
String filterQueryStr = "field1:*" + filterContains + "* OR "
+ " field2:*" + filterContains + "* OR "
+ " field3:*" + filterContains + "* OR "
+ " field4:*" + filterContains + "*";
solrQuery.setQuery( filterQueryStr );
solrQuery.setRows( 0 );
String filterStr = "field5:[ " + timeFrom + " TO " + timeTo + " ] " +
" AND field6:(" + StringUtils.arrayToDelimitedString( values, " OR " ) + ")";
solrQuery.setFilterQueries( filterStr );
solrQuery.add( "json.facet", "\n{" +
"\n target: {" +
"\n type: terms," +
"\n field: targetId," +
"\n sort: {" + sortCol + ": " + sortDesc + "}," +
"\n offset: " + offset + "," +
"\n limit: " + limit + "," +
"\n facet: {" +
"\n avg_f1: \"avg(field1)\"," +
"\n avg_f2: \"avg(field2)\"," +
"\n uniq_f3: \"unique(field3)\"" +
"\n sub_facet: {\n" +
"\n type: terms,\n" +
"\n field: field5,\n" +
"\n limit: 1,\n" +
"\n sort: {field3:desc}\n" +
"\n }\n" +
"\n }\n" +
"\n },\n" +
"\n total: {" +
"\n type: query," +
"\n q: \"*:*\"," +
"\n facet: {" +
"\n uniq_id: \"unique(targetId)\"" +
"\n }" +
"\n }" +
"\n}"
);
{code}
when changing the filterContains string, this sometimes works, nullPointerException only happens on a certain query/filter criterias.
please let me know what else I can do.
thanks.
was (Author: flashflexpro):
Actually, I think it has something to do with the result set, this is the code:
SolrQuery solrQuery = new SolrQuery();
filterContains = filterContains.toLowerCase();
String filterQueryStr = "field1:*" + filterContains + "* OR "
+ " field2:*" + filterContains + "* OR "
+ " field3:*" + filterContains + "* OR "
+ " field4:*" + filterContains + "*";
solrQuery.setQuery( filterQueryStr );
solrQuery.setRows( 0 );
String filterStr = "field5:[ " + timeFrom + " TO " + timeTo + " ] " +
" AND field6:(" + StringUtils.arrayToDelimitedString( values, " OR " ) + ")";
solrQuery.setFilterQueries( filterStr );
solrQuery.add( "json.facet", "\n{" +
"\n target: {" +
"\n type: terms," +
"\n field: targetId," +
"\n sort: {" + sortCol + ": " + sortDesc + "}," +
"\n offset: " + offset + "," +
"\n limit: " + limit + "," +
"\n facet: {" +
"\n avg_f1: \"avg(field1)\"," +
"\n avg_f2: \"avg(field2)\"," +
"\n uniq_f3: \"unique(field3)\"" +
"\n sub_facet: {\n" +
"\n type: terms,\n" +
"\n field: field5,\n" +
"\n limit: 1,\n" +
"\n sort: {field3:desc}\n" +
"\n }\n" +
"\n }\n" +
"\n },\n" +
"\n total: {" +
"\n type: query," +
"\n q: \"*:*\"," +
"\n facet: {" +
"\n uniq_id: \"unique(targetId)\"" +
"\n }" +
"\n }" +
"\n}"
);
when changing the filterContains string, this sometimes works, nullPointerException only happens on a certain query/filter criterias.
please let me know what else I can do.
thanks.
> Null pointer exception when
> ----------------------------
>
> Key: SOLR-7879
> URL: https://issues.apache.org/jira/browse/SOLR-7879
> Project: Solr
> Issue Type: Bug
> Components: Facet Module, search
> Affects Versions: 5.2.1
> Environment: Oracle jdk1.8
> Reporter: Gary Yang
> Labels: faceting, jsonapi, subfacet
>
> This can be reproduce by certain inputs, but I can't find a pattern in the inputs that cause this error:
> Caused by: org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error from server at http://192.168.1.47:8983/solr/core1: java.lang.NullPointerException
> at org.apache.solr.search.facet.FacetFieldProcessorFCBase.findTopSlots(FacetField.java:301)
> at org.apache.solr.search.facet.FacetFieldProcessorFCBase.getFieldCacheCounts(FacetField.java:254)
> at org.apache.solr.search.facet.FacetFieldProcessorFCBase.process(FacetField.java:218)
> at org.apache.solr.search.facet.FacetProcessor.processSubs(FacetRequest.java:267)
> at org.apache.solr.search.facet.FacetFieldProcessorNumeric.calcFacets(FacetFieldProcessorNumeric.java:472)
> at org.apache.solr.search.facet.FacetFieldProcessorNumeric.process(FacetFieldProcessorNumeric.java:151)
> at org.apache.solr.search.facet.FacetProcessor.processSubs(FacetRequest.java:267)
> at org.apache.solr.search.facet.FacetProcessor.fillBucket(FacetRequest.java:354)
> at org.apache.solr.search.facet.FacetQueryProcessor.process(FacetQuery.java:57)
> at org.apache.solr.search.facet.FacetModule.process(FacetModule.java:87)
> at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:255)
> at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:143)
> at org.apache.solr.core.SolrCore.execute(SolrCore.java:2064)
> at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:654)
> at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:450)
> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:227)
> at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:196)
> at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1652)
> at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:585)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
> at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:577)
> at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:223)
> at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1127)
> at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:515)
> at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185)
> at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1061)
> at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
> at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:215)
> at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:110)
> at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
> at org.eclipse.jetty.server.Server.handle(Server.java:497)
> at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:310)
> at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:257)
> at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:540)
> at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
> at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
> at java.lang.Thread.run(Thread.java:745)
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org