Marek created SOLR-13197:
----------------------------
Summary: NullPointerException in
org/apache/solr/handler/component/StatsField.java[251]
Key: SOLR-13197
URL: https://issues.apache.org/jira/browse/SOLR-13197
Project: Solr
Issue Type: Bug
Security Level: Public (Default Security Level. Issues are Public)
Affects Versions: master (9.0)
Environment: h1. Steps to reproduce
* Use a Linux machine.
* Build commit {{ea2c8ba}} of Solr as described in the section below.
* Build the films collection as described below.
* Start the server using the command {{./bin/solr start -f -p 8983 -s
/tmp/home}}
* Request the URL given in the bug description.
h1. Compiling the server
{noformat}
git clone https://github.com/apache/lucene-solr
cd lucene-solr
git checkout ea2c8ba
ant compile
cd solr
ant server
{noformat}
h1. Building the collection
We followed [Exercise
2|http://lucene.apache.org/solr/guide/7_5/solr-tutorial.html#exercise-2] from
the [Solr Tutorial|http://lucene.apache.org/solr/guide/7_5/solr-tutorial.html].
The attached file ({{home.zip}}) gives the contents of folder {{/tmp/home}}
that you will obtain by following the steps below:
{noformat}
mkdir -p /tmp/home
echo '<?xml version="1.0" encoding="UTF-8" ?><solr></solr>' > /tmp/home/solr.xml
{noformat}
In one terminal start a Solr instance in foreground:
{noformat}
./bin/solr start -f -p 8983 -s /tmp/home
{noformat}
In another terminal, create a collection of movies, with no shards and no
replication, and initialize it:
{noformat}
bin/solr create -c films
curl -X POST -H 'Content-type:application/json' --data-binary '{"add-field":
{"name":"name", "type":"text_general", "multiValued":false, "stored":true}}'
http://localhost:8983/solr/films/schema
curl -X POST -H 'Content-type:application/json' --data-binary
'{"add-copy-field" : {"source":"*","dest":"_text_"}}'
http://localhost:8983/solr/films/schema
./bin/post -c films example/films/films.json
{noformat}
Reporter: Marek
Attachments: home.zip
Requesting the following URL causes Solr to return an HTTP 500 error response:
{noformat}
http://localhost:8983/solr/films/select?stats=true&stats.field={!cardinalit}
{noformat}
The error response seems to be caused by the following uncaught exception:
{noformat}
ERROR (qtp689401025-17) [ x:films] o.a.s.s.HttpSolrCall
null:java.lang.NullPointerException
at
org.apache.solr.handler.component.StatsField.<init>(StatsField.java:251)
at
org.apache.solr.handler.component.StatsInfo.<init>(StatsComponent.java:194)
at
org.apache.solr.handler.component.StatsComponent.prepare(StatsComponent.java:47)
at
org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:272)
at
org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:199)
at org.apache.solr.core.SolrCore.execute(SolrCore.java:2559)
at org.apache.solr.servlet.HttpSolrCall.execute(HttpSolrCall.java:711)
at org.apache.solr.servlet.HttpSolrCall.call(HttpSolrCall.java:516)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:394)
at
org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:340)
[...]
{noformat}
There is called method 'createParser' on local variable 'qplug' which is set to
null on the previous line (i.e. 250). The value null is set to the local
variable 'qplug', because of failure in finding the sting "cardinalit" in the
field 'registry' of the class org.apache.solr.core.PluginBag (at line
org/apache/solr/core/PluginBag.java[167]).
We found this bug using [Diffblue Microservices
Testing|https://www.diffblue.com/labs/?utm_source=solr-br]. Find more
information on this [fuzz testing
campaign|https://www.diffblue.com/blog/2018/12/19/diffblue-microservice-testing-a-sneak-peek-at-our-early-product-and-results?utm_source=solr-br].
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]