You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Adrien Grand (Jira)" <ji...@apache.org> on 2020/10/16 17:24:00 UTC
[jira] [Resolved] (LUCENE-9524) NullPointerException in
IndexSearcher.explain() when using ComplexPhraseQueryParser
[ https://issues.apache.org/jira/browse/LUCENE-9524?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Adrien Grand resolved LUCENE-9524.
----------------------------------
Fix Version/s: 8.7
Resolution: Fixed
> NullPointerException in IndexSearcher.explain() when using ComplexPhraseQueryParser
> -----------------------------------------------------------------------------------
>
> Key: LUCENE-9524
> URL: https://issues.apache.org/jira/browse/LUCENE-9524
> Project: Lucene - Core
> Issue Type: Bug
> Components: core/queryparser, core/search
> Affects Versions: 8.6, 8.6.2
> Reporter: Michał Słomkowski
> Priority: Major
> Fix For: 8.7
>
> Time Spent: 1.5h
> Remaining Estimate: 0h
>
> I get NPE when I use {{IndexSearcher.explain()}}. Checked with Lucene 8.6.0
> and 8.6.2.
> The query: {{(lorem AND NOT "dolor lorem") OR ipsum}}
> The text: {{dolor lorem ipsum}}
> Stack trace:
> {code}
> java.lang.NullPointerException at java.util.Objects.requireNonNull(Objects.java:203)
> at org.apache.lucene.search.LeafSimScorer.<init>(LeafSimScorer.java:38)
> at org.apache.lucene.search.spans.SpanWeight.explain(SpanWeight.java:160)
> at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
> at org.apache.lucene.search.BooleanWeight.explain(BooleanWeight.java:87)
> at org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:716)
> at org.apache.lucene.search.IndexSearcher.explain(IndexSearcher.java:693)
> {code}
> Minimal example code:
> {code:java}
> val analyzer = new StandardAnalyzer();
> val query = new ComplexPhraseQueryParser("", analyzer).parse(queryString);
> final MemoryIndex memoryIndex = new MemoryIndex(true);
> memoryIndex.addField("", text, analyzer);
> final IndexSearcher searcher = memoryIndex.createSearcher();
> final TopDocs topDocs = searcher.search(query, 1);
> final ScoreDoc match = topDocs.scoreDocs[0];
> searcher.explain(query, match.doc);
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org