Minerva created SOLR-16700:
------------------------------

             Summary: NullPointerException during the deletion of the last 
document using external field
                 Key: SOLR-16700
                 URL: https://issues.apache.org/jira/browse/SOLR-16700
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
    Affects Versions: 8.11
            Reporter: Minerva


I noticed a NullPointerException in solr.log file when I delete all the 
documents from the solr index. 

I downloaded a new version of solr 8.11. Extracted the file and configured a 
schema so that it had only 3 fields: id, merchant and an external field related 
to the merchant field, named "external_merchant_rating". I added some documents 
to a test core and then removed them one by one. When I removed the last one, I 
got a NullPointerException.
{code:java}
2023-02-10 12:34:40.524 ERROR (searcherExecutor-80-thread-1-processing-x:xx) [ 
x:xx] o.a.s.c.SolrCore null => java.lang.NullPointerException at 
org.apache.solr.search.function.FileFloatSource.getFloats(FileFloatSource.java:295)
 java.lang.NullPointerException: null at 
org.apache.solr.search.function.FileFloatSource.getFloats(FileFloatSource.java:295)
 ~[?:?] at 
org.apache.solr.search.function.FileFloatSource.access$000(FileFloatSource.java:62)
 ~[?:?] at 
org.apache.solr.search.function.FileFloatSource$2.createValue(FileFloatSource.java:164)
 ~[?:?] at 
org.apache.solr.search.function.FileFloatSource$Cache.refresh(FileFloatSource.java:177)
 ~[?:?] at 
org.apache.solr.search.function.FileFloatSource.refreshCache(FileFloatSource.java:151)
 ~[?:?] at 
org.apache.solr.schema.ExternalFileFieldReloader.newSearcher(ExternalFileFieldReloader.java:76)
 ~[?:?] at 
org.apache.solr.core.SolrCore.lambda$getSearcher$17(SolrCore.java:2416) ~[?:?] 
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?] at 
org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor.lambda$execute$0(ExecutorUtil.java:218)
 ~[?:?] at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) 
~[?:?] at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) 
~[?:?] at java.lang.Thread.run(Thread.java:829) [?:?]{code}
As follow are my configuration files.

managed-schema.xml

 
{code:java}
...
<fieldType name="merchantEntryRankFile" keyField="merchant" defVal="0.1" 
stored="false" indexed="false"
               class="solr.ExternalFileField"/>
<field name="merchant" type="string" indexed="true" stored="true" 
required="false"/>
<field name="merchant_rating" type="merchantEntryRankFile"/>
...
{code}
solrconfig.xml

 
{code:java}
...
<listener event="newSearcher" 
class="org.apache.solr.schema.ExternalFileFieldReloader"/>
<listener event="firstSearcher" 
class="org.apache.solr.schema.ExternalFileFieldReloader"/>
... 
{code}
 

I observed that if I remove the two listeners from the solrconfig.xml file the 
NullPointerException does not happen cleaning the core/removing documents one 
by one. 

The configuration of the two listeners is the one suggested from the Solr 
official documentation.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@solr.apache.org
For additional commands, e-mail: issues-h...@solr.apache.org

Reply via email to