[prev in list] [next in list] [prev in thread] [next in thread] 

List:       solr-user
Subject:    JSON Facet API - Range Query - Missing field parameter NPE
From:       Kevin Risden <compuwizard123 () gmail ! com>
Date:       2017-02-24 21:47:41
Message-ID: CAJU9nmiyRASzHZ1d2nVPEb9ATgFG5w_jk=2HvAtXkWT4aDxuUQ () mail ! gmail ! com
[Download RAW message or body]


One of my colleagues ran into this testing the JSON Facet API. A malformed
JSON Facet API range query seems to get a NPE and then devolves into saying
no live servers to handle the request. It looks like the
FacetRangeProcessor should check the inputs before trying to getField. Does
this seem reasonable?

The problematic query:

json.facet={price:{type:range,start:0,end:600,gap:50}}

The fixed query:

json.facet={prices:{field:price,type:range,start:0,end:600,gap:50}}

The stack trace:

INFO  - 2017-02-24 20:54:52.217; [c:gettingstarted s:shard1 r:core_node2
x:gettingstarted_shard1_replica1] org.apache.solr.core.SolrCore;
[gettingstarted_shard1_replica1]  webapp=/solr path=/select
params={df=_text_&distrib=false&_facet_={}&fl=id&fl=
score&shards.purpose=1048580&start=0&fsv=true&shard.url=htt
p://localhost:8983/solr/gettingstarted_shard1_replica1/|
http://localhost:7574/solr/gettingstarted_shard1_replica2/&rows=10&
version=2&q=*:*&json.facet={price:{type:range,start:0,end:600,gap:50}}&NOW=
1487969692214&isShard=true&wt=javabin} hits=2328 status=500 QTime=1
ERROR - 2017-02-24 20:54:52.218; [c:gettingstarted s:shard1 r:core_node2
x:gettingstarted_shard1_replica1] org.apache.solr.common.SolrException;
null:java.lang.NullPointerException
at org.apache.solr.schema.IndexSchema$DynamicReplacement$
DynamicPattern$NameEndsWith.matches(IndexSchema.java:1043)
at org.apache.solr.schema.IndexSchema$DynamicReplacement.matches(
IndexSchema.java:1057)
at org.apache.solr.schema.IndexSchema.getFieldOrNull(IndexSchema.java:1213)
at org.apache.solr.schema.IndexSchema.getField(IndexSchema.java:1230)
at org.apache.solr.search.facet.FacetRangeProcessor.process(
FacetRange.java:96)
at org.apache.solr.search.facet.FacetProcessor.processSubs(
FacetProcessor.java:439)
at org.apache.solr.search.facet.FacetProcessor.fillBucket(
FacetProcessor.java:396)
at org.apache.solr.search.facet.FacetQueryProcessor.process(
FacetQuery.java:60)
at org.apache.solr.search.facet.FacetModule.process(FacetModule.java:96)
at org.apache.solr.handler.component.SearchHandler.handleRequestBody(
SearchHandler.java:295)
at org.apache.solr.handler.RequestHandlerBase.handleRequest(
RequestHandlerBase.java:166)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:2306)

Kevin Risden


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic