<freeStyleBuild _class='hudson.model.FreeStyleBuild'><action _class='hudson.model.CauseAction'><cause _class='hudson.model.Cause$UpstreamCause'><shortDescription>Started by upstream project "Lucene-main-Linux" build number 65,570</shortDescription><upstreamBuild>65570</upstreamBuild><upstreamProject>Lucene-main-Linux</upstreamProject><upstreamUrl>job/Lucene-main-Linux/</upstreamUrl></cause></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><refsremotesoriginbranch_10x _class='hudson.plugins.git.util.Build'><buildNumber>15245</buildNumber><marked><SHA1>3a75616c9437de7ea909fb089d6afff6872879e6</SHA1><branch><SHA1>3a75616c9437de7ea909fb089d6afff6872879e6</SHA1><name>refs/remotes/origin/branch_10x</name></branch></marked><revision><SHA1>3a75616c9437de7ea909fb089d6afff6872879e6</SHA1><branch><SHA1>3a75616c9437de7ea909fb089d6afff6872879e6</SHA1><name>refs/remotes/origin/branch_10x</name></branch></revision></refsremotesoriginbranch_10x></buildsByBranchName><lastBuiltRevision><SHA1>3a75616c9437de7ea909fb089d6afff6872879e6</SHA1><branch><SHA1>3a75616c9437de7ea909fb089d6afff6872879e6</SHA1><name>refs/remotes/origin/branch_10x</name></branch></lastBuiltRevision><remoteUrl>https://gitbox.apache.org/repos/asf/lucene.git</remoteUrl><scmName></scmName></action><action></action><action></action><action _class='hudson.model.ParametersAction'></action><action _class='hudson.tasks.junit.TestResultAction'><failCount>0</failCount><skipCount>1452</skipCount><totalCount>19685</totalCount><urlName>testReport</urlName></action><action></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><description>Java: 64bit/hotspot/jdk-22.0.2 -XX:+UseCompressedOops -XX:+UseZGC</description><displayName>#15245</displayName><duration>537379</duration><estimatedDuration>537379</estimatedDuration><fullDisplayName>Lucene-10.x-Linux #15245</fullDisplayName><id>15245</id><inProgress>false</inProgress><keepLog>false</keepLog><number>15245</number><queueId>224948</queueId><result>SUCCESS</result><timestamp>1783534439054</timestamp><url>https://jenkins.thetaphi.de/view/Lucene/job/Lucene-10.x-Linux/15245/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>lucene/core/src/java/org/apache/lucene/search/ReqExclBulkScorer.java</affectedPath><affectedPath>lucene/core/src/test/org/apache/lucene/search/TestDenseConjunctionBulkScorer.java</affectedPath><affectedPath>lucene/core/src/java/org/apache/lucene/search/TwoPhaseIterator.java</affectedPath><commitId>d1e035949fb5c297257228d825307dafe5f36e03</commitId><timestamp>1783500467000</timestamp><author><absoluteUrl>https://jenkins.thetaphi.de/user/jim.ferenczi</absoluteUrl><fullName>jim.ferenczi</fullName></author><authorEmail>jim.ferenczi@elastic.co</authorEmail><comment>Revert TwoPhaseIterator#docIDRunEnd default to approximation().docID()

The default was changed in #16307 to return docID()+1, mirroring
DocIdSetIterator. That is wrong for a TwoPhaseIterator: its current
approximation doc is only a candidate until matches() confirms it.
DenseConjunctionBulkScorer#scoreWindow consults docIDRunEnd() before
matches(), so an optimistic docID()+1 let a width-1 window treat an
unconfirmed (possibly out-of-range) boundary doc as a fully-matching run
and collect it via collectRange, causing an off-by-one over-count (e.g.
TestRangeFacetCounts#testRandomLongsMultiValued).

Restore the conservative default (report no matching run) and document
why it differs from DocIdSetIterator. The ReqExclBulkScorer optimization
is unaffected: it calls docIDRunEnd() only after matches() and already
clamps to at least upTo+1.

Add a DenseConjunctionBulkScorer test asserting that a two-phase clause
on the default docIDRunEnd() collects the same docs whether scored in one
pass or as adjacent width-1 windows -- the partition invariance that
intra-segment search concurrency relies on.

(cherry picked from commit 32f32667a174c0df5dd6d0ba48870d073868f71b)
</comment><date>2026-07-08 10:47:47 +0200</date><id>d1e035949fb5c297257228d825307dafe5f36e03</id><msg>Revert TwoPhaseIterator#docIDRunEnd default to approximation().docID()</msg><path><editType>edit</editType><file>lucene/core/src/test/org/apache/lucene/search/TestDenseConjunctionBulkScorer.java</file></path><path><editType>edit</editType><file>lucene/core/src/java/org/apache/lucene/search/ReqExclBulkScorer.java</file></path><path><editType>edit</editType><file>lucene/core/src/java/org/apache/lucene/search/TwoPhaseIterator.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>lucene/grouping/src/java/org/apache/lucene/search/grouping/GroupingSearch.java</affectedPath><affectedPath>lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGroupingSearch.java</affectedPath><affectedPath>lucene/core/src/java/org/apache/lucene/search/CachingCollector.java</affectedPath><affectedPath>lucene/grouping/src/java/org/apache/lucene/search/grouping/AllGroupsCollector.java</affectedPath><affectedPath>lucene/core/src/test/org/apache/lucene/search/TestCachingCollectorManager.java</affectedPath><affectedPath>lucene/core/src/java/org/apache/lucene/search/CachingCollectorManager.java</affectedPath><affectedPath>lucene/grouping/src/test/org/apache/lucene/search/grouping/BaseGroupSelectorTestCase.java</affectedPath><affectedPath>lucene/CHANGES.txt</affectedPath><affectedPath>lucene/grouping/src/java/org/apache/lucene/search/grouping/AllGroupHeadsCollector.java</affectedPath><commitId>d60e550b47f44253abc822454f7a5098526fb01d</commitId><timestamp>1783502953000</timestamp><author><absoluteUrl>https://jenkins.thetaphi.de/user/javanna</absoluteUrl><fullName>javanna</fullName></author><authorEmail>javanna@apache.org</authorEmail><comment>Introduce CachingCollectorManager to parallelize search when using CachingCollector (#16247)

Introduce CachingCollectorManager, switch GroupingSearch to use search concurrency and move away from the deprecated search(Query, Collector) method.

In addition, remove experimental GroupingSearch constructor that takes a GroupSelector as argument in favor of providing a GroupSelector supplier.

Relates to #12892.
</comment><date>2026-07-08 11:29:13 +0200</date><id>d60e550b47f44253abc822454f7a5098526fb01d</id><msg>Introduce CachingCollectorManager to parallelize search when using CachingCollector (#16247)</msg><path><editType>edit</editType><file>lucene/CHANGES.txt</file></path><path><editType>edit</editType><file>lucene/grouping/src/java/org/apache/lucene/search/grouping/GroupingSearch.java</file></path><path><editType>edit</editType><file>lucene/grouping/src/test/org/apache/lucene/search/grouping/TestGroupingSearch.java</file></path><path><editType>edit</editType><file>lucene/grouping/src/java/org/apache/lucene/search/grouping/AllGroupsCollector.java</file></path><path><editType>edit</editType><file>lucene/grouping/src/java/org/apache/lucene/search/grouping/AllGroupHeadsCollector.java</file></path><path><editType>edit</editType><file>lucene/core/src/java/org/apache/lucene/search/CachingCollector.java</file></path><path><editType>edit</editType><file>lucene/grouping/src/test/org/apache/lucene/search/grouping/BaseGroupSelectorTestCase.java</file></path><path><editType>add</editType><file>lucene/core/src/test/org/apache/lucene/search/TestCachingCollectorManager.java</file></path><path><editType>add</editType><file>lucene/core/src/java/org/apache/lucene/search/CachingCollectorManager.java</file></path></item><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>lucene/CHANGES.txt</affectedPath><affectedPath>lucene/core/src/test/org/apache/lucene/search/TestTermInSetQuery.java</affectedPath><commitId>3a75616c9437de7ea909fb089d6afff6872879e6</commitId><timestamp>1783529674000</timestamp><author><absoluteUrl>https://jenkins.thetaphi.de/user/dawid.weiss</absoluteUrl><fullName>dawid.weiss</fullName></author><authorEmail>dawid.weiss@carrotsearch.com</authorEmail><comment>Backport changes to TestTermInSetQuery. #16300
</comment><date>2026-07-08 18:54:34 +0200</date><id>3a75616c9437de7ea909fb089d6afff6872879e6</id><msg>Backport changes to TestTermInSetQuery. #16300</msg><path><editType>edit</editType><file>lucene/CHANGES.txt</file></path><path><editType>edit</editType><file>lucene/core/src/test/org/apache/lucene/search/TestTermInSetQuery.java</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.thetaphi.de/user/javanna</absoluteUrl><fullName>javanna</fullName></culprit><culprit><absoluteUrl>https://jenkins.thetaphi.de/user/jim.ferenczi</absoluteUrl><fullName>jim.ferenczi</fullName></culprit><culprit><absoluteUrl>https://jenkins.thetaphi.de/user/dawid.weiss</absoluteUrl><fullName>dawid.weiss</fullName></culprit></freeStyleBuild>