lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Terry Smith (JIRA)" <j...@apache.org>
Subject [jira] [Created] (LUCENE-6385) NullPointerException from Highlighter.getBestFragment()
Date Wed, 01 Apr 2015 14:18:52 GMT
Terry Smith created LUCENE-6385:
-----------------------------------

             Summary: NullPointerException from Highlighter.getBestFragment()
                 Key: LUCENE-6385
                 URL: https://issues.apache.org/jira/browse/LUCENE-6385
             Project: Lucene - Core
          Issue Type: Bug
          Components: modules/highlighter
    Affects Versions: 5.1
            Reporter: Terry Smith


When testing against the 5.1 nightly snapshots I've come across a NullPointerException in
highlighting when nothing would be highlighted. This does not happen with 5.0.

{noformat}
java.lang.NullPointerException
	at __randomizedtesting.SeedInfo.seed([3EDC6EB0FA552B34:9971866E394F5FD0]:0)
	at org.apache.lucene.search.highlight.WeightedSpanTermExtractor.extractWeightedSpanTerms(WeightedSpanTermExtractor.java:311)
	at org.apache.lucene.search.highlight.WeightedSpanTermExtractor.extract(WeightedSpanTermExtractor.java:151)
	at org.apache.lucene.search.highlight.WeightedSpanTermExtractor.getWeightedSpanTerms(WeightedSpanTermExtractor.java:515)
	at org.apache.lucene.search.highlight.QueryScorer.initExtractor(QueryScorer.java:219)
	at org.apache.lucene.search.highlight.QueryScorer.init(QueryScorer.java:187)
	at org.apache.lucene.search.highlight.Highlighter.getBestTextFragments(Highlighter.java:196)
	at org.apache.lucene.search.highlight.Highlighter.getBestFragments(Highlighter.java:156)
	at org.apache.lucene.search.highlight.Highlighter.getBestFragment(Highlighter.java:102)
	at org.apache.lucene.search.highlight.Highlighter.getBestFragment(Highlighter.java:80)
	at org.apache.lucene.search.highlight.MissesTest.testPhraseQuery(MissesTest.java:50)
{noformat}

I've written a small unit test and used git bisect to narrow the regression to the following
commit:

{noformat}
commit 24e4eefaefb1837d1d4fa35f7669c2b264f872ac
Author: Michael McCandless <mikemccand@apache.org>
Date:   Tue Mar 31 08:48:28 2015 +0000

    LUCENE-6308: cutover Spans to DISI, reuse ConjunctionDISI, use two-phased iteration
    
    git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/branches/branch_5x@1670273 13f79535-47bb-0310-9956-ffa450edef68
{noformat}

The problem looks quite simple, WeightedSpanTermExtractor.extractWeightedSpanTerms() needs
an early return if SpanQuery.getSpans() returns null. All other callers check against this.

Unit test and fix (against the regressed commit) attached.




--
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


Mime
View raw message