[ https://issues.apache.org/jira/browse/LUCENE-9744?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Dawid Weiss updated LUCENE-9744: -------------------------------- Attachment: LUCENE-9744.patch > NPE on a degenerate query in > MinimumShouldMatchIntervalsSource$MinimumMatchesIterator.getSubMatches() > ----------------------------------------------------------------------------------------------------- > > Key: LUCENE-9744 > URL: https://issues.apache.org/jira/browse/LUCENE-9744 > Project: Lucene - Core > Issue Type: Bug > Affects Versions: master (9.0), 8.7 > Reporter: Dawid Weiss > Priority: Major > Attachments: LUCENE-9744.patch > > > This query: > {code} > Query q1 = > new IntervalQuery( > FLD_TEXT1, > Intervals.ordered( > Intervals.atLeast(1, Intervals.term("foo")), > Intervals.atLeast(1, Intervals.term("bar")))); > {code} > produces an NPE when retrieving match regions. Note degenerate atLeast with > only one argument - this may play a role but it's not signaled anywhere > before (the query itself does select the right documents, NPE blows up when > matches are retrieved). > Stack: > {code} > java.lang.NullPointerException > at > __randomizedtesting.SeedInfo.seed([2DDAAECF04D90D2F:EB69410397F8761E]:0) > at > org.apache.lucene.queries.intervals.MinimumShouldMatchIntervalsSource$MinimumMatchesIterator.getSubMatches(MinimumShouldMatchIntervalsSource.java:389) > at > org.apache.lucene.queries.intervals.CachingMatchesIterator.cache(CachingMatchesIterator.java:39) > at > org.apache.lucene.queries.intervals.CachingMatchesIterator.next(CachingMatchesIterator.java:68) > at > org.apache.lucene.queries.intervals.IntervalMatches$2.nextInterval(IntervalMatches.java:137) > at > org.apache.lucene.queries.intervals.OrderedIntervalsSource$OrderedIntervalIterator.nextInterval(OrderedIntervalsSource.java:166) > at > org.apache.lucene.queries.intervals.ConjunctionIntervalsSource.matches(ConjunctionIntervalsSource.java:89) > at > org.apache.lucene.queries.intervals.IntervalQuery$IntervalWeight.lambda$matches$0(IntervalQuery.java:177) > at org.apache.lucene.search.MatchesUtils.forField(MatchesUtils.java:115) > at > org.apache.lucene.queries.intervals.IntervalQuery$IntervalWeight.matches(IntervalQuery.java:174) > at > org.apache.lucene.search.matchhighlight.MatchRegionRetriever.highlightDocument(MatchRegionRetriever.java:210) > at > org.apache.lucene.search.matchhighlight.MatchRegionRetriever.highlightDocuments(MatchRegionRetriever.java:193) > at > org.apache.lucene.search.matchhighlight.MatchRegionRetriever.highlightDocuments(MatchRegionRetriever.java:146) > at > org.apache.lucene.search.matchhighlight.MatchHighlighter.highlight(MatchHighlighter.java:236) > at > org.apache.lucene.search.matchhighlight.TestMatchHighlighter.lambda$testNpeOnIntervalQuery$7(TestMatchHighlighter.java:540) > at > org.apache.lucene.search.matchhighlight.IndexBuilder.build(IndexBuilder.java:100) > at > org.apache.lucene.search.matchhighlight.TestMatchHighlighter.testNpeOnIntervalQuery(TestMatchHighlighter.java:510) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.base/java.lang.reflect.Method.invoke(Method.java:564) > {code} > Repro test attached. > [~romseygeek], help! :) -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org