This is an automated email from the ASF dual-hosted git repository.
ishan pushed a commit to branch jira/solr-13350
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/jira/solr-13350 by this push:
new d8b371c15f5 ./gradlew tidy again
d8b371c15f5 is described below
commit d8b371c15f5a5d2a18362a7109ad7538b01d3b95
Author: Ishan Chattopadhyaya <[email protected]>
AuthorDate: Tue Apr 9 13:14:23 2024 +0530
./gradlew tidy again
---
.../java/org/apache/solr/core/CoreContainer.java | 26 +-
.../apache/solr/search/MultiThreadedSearcher.java | 573 ++++++++++-----------
.../org/apache/solr/search/SolrIndexSearcher.java | 10 +-
3 files changed, 305 insertions(+), 304 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/core/CoreContainer.java
b/solr/core/src/java/org/apache/solr/core/CoreContainer.java
index 706935ecc14..cceeb23a526 100644
--- a/solr/core/src/java/org/apache/solr/core/CoreContainer.java
+++ b/solr/core/src/java/org/apache/solr/core/CoreContainer.java
@@ -51,9 +51,9 @@ import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
-import java.util.concurrent.TimeoutException;
import java.util.concurrent.RejectedExecutionHandler;
import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeoutException;
import java.util.function.Function;
import java.util.function.Supplier;
import java.util.stream.Collectors;
@@ -447,17 +447,19 @@ public class CoreContainer {
cfg.getIndexSearcherExecutorThreads(), // thread count
cfg.getIndexSearcherExecutorThreads(), // queue size
new SolrNamedThreadFactory("searcherCollector"));
- ((ExecutorUtil.MDCAwareThreadPoolExecutor)
collectorExecutor).setRejectedExecutionHandler(new RejectedExecutionHandler() {
- @Override
- public void rejectedExecution(Runnable r, ThreadPoolExecutor executor) {
- if (!executor.isShutdown()) {
- try {
- executor.getQueue().put(r);
- } catch (InterruptedException e) {
- }
- }
- }
- });
+ ((ExecutorUtil.MDCAwareThreadPoolExecutor) collectorExecutor)
+ .setRejectedExecutionHandler(
+ new RejectedExecutionHandler() {
+ @Override
+ public void rejectedExecution(Runnable r, ThreadPoolExecutor
executor) {
+ if (!executor.isShutdown()) {
+ try {
+ executor.getQueue().put(r);
+ } catch (InterruptedException e) {
+ }
+ }
+ }
+ });
}
@SuppressWarnings({"unchecked"})
diff --git
a/solr/core/src/java/org/apache/solr/search/MultiThreadedSearcher.java
b/solr/core/src/java/org/apache/solr/search/MultiThreadedSearcher.java
index 868733f808f..290ec41520a 100644
--- a/solr/core/src/java/org/apache/solr/search/MultiThreadedSearcher.java
+++ b/solr/core/src/java/org/apache/solr/search/MultiThreadedSearcher.java
@@ -16,6 +16,14 @@
*/
package org.apache.solr.search;
+import java.io.IOException;
+import java.lang.invoke.MethodHandles;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.concurrent.ExecutionException;
+import java.util.function.Supplier;
import org.apache.lucene.index.LeafReaderContext;
import org.apache.lucene.index.Term;
import org.apache.lucene.search.BooleanClause;
@@ -34,356 +42,345 @@ import org.apache.solr.search.join.GraphQuery;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.IOException;
-import java.lang.invoke.MethodHandles;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collection;
-import java.util.Iterator;
-import java.util.concurrent.ExecutionException;
-import java.util.function.Supplier;
-
public class MultiThreadedSearcher {
- private static final Logger log =
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
-
- final SolrIndexSearcher searcher;
+ private static final Logger log =
LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
+
+ final SolrIndexSearcher searcher;
+
+ public MultiThreadedSearcher(SolrIndexSearcher searcher) {
+ this.searcher = searcher;
+ }
+
+ SearchResult searchCollectorManagers(
+ int len,
+ QueryCommand cmd,
+ Query query,
+ boolean needTopDocs,
+ boolean needMaxScore,
+ boolean needDocSet)
+ throws IOException {
+ Collection<CollectorManager<Collector, Object>> collectors = new
ArrayList<>();
+
+ int firstCollectorsSize = 0;
+
+ final int firstTopDocsCollectorIndex;
+ if (needTopDocs) {
+ firstTopDocsCollectorIndex = firstCollectorsSize;
+ firstCollectorsSize++;
+ } else {
+ firstTopDocsCollectorIndex = -1;
+ }
- public MultiThreadedSearcher(SolrIndexSearcher searcher) {
- this.searcher = searcher;
+ final int firstMaxScoreCollectorIndex;
+ if (needMaxScore) {
+ firstMaxScoreCollectorIndex = firstCollectorsSize;
+ firstCollectorsSize++;
+ } else {
+ firstMaxScoreCollectorIndex = -1;
}
- SearchResult searchCollectorManagers(
- int len,
- QueryCommand cmd,
- Query query,
- boolean needTopDocs,
- boolean needMaxScore,
- boolean needDocSet)
- throws IOException {
- Collection<CollectorManager<Collector, Object>> collectors = new
ArrayList<>();
+ Collector[] firstCollectors = new Collector[firstCollectorsSize];
- int firstCollectorsSize = 0;
+ if (needTopDocs) {
- final int firstTopDocsCollectorIndex;
- if (needTopDocs) {
- firstTopDocsCollectorIndex = firstCollectorsSize;
- firstCollectorsSize++;
- } else {
- firstTopDocsCollectorIndex = -1;
- }
+ collectors.add(new TopDocsCM(len, cmd, firstCollectors,
firstTopDocsCollectorIndex));
+ }
+ if (needMaxScore) {
+ collectors.add(new MaxScoreCM(firstCollectors,
firstMaxScoreCollectorIndex));
+ }
+ if (needDocSet) {
+ int maxDoc = searcher.getRawReader().maxDoc();
+ log.error("raw read max={}", searcher.getRawReader().maxDoc());
- final int firstMaxScoreCollectorIndex;
- if (needMaxScore) {
- firstMaxScoreCollectorIndex = firstCollectorsSize;
- firstCollectorsSize++;
- } else {
- firstMaxScoreCollectorIndex = -1;
- }
+ collectors.add(new DocSetCM(maxDoc));
+ }
- Collector[] firstCollectors = new Collector[firstCollectorsSize];
+ @SuppressWarnings({"unchecked", "rawtypes"})
+ CollectorManager<Collector, Object>[] colls = collectors.toArray(new
CollectorManager[0]);
+ SolrMultiCollectorManager manager = new SolrMultiCollectorManager(colls);
+ Object[] ret;
+ try {
+ ret = searcher.search(query, manager);
+ } catch (Exception ex) {
+ if (ex instanceof RuntimeException
+ && ex.getCause() != null
+ && ex.getCause() instanceof ExecutionException
+ && ex.getCause().getCause() != null
+ && ex.getCause().getCause() instanceof RuntimeException) {
+ throw (RuntimeException) ex.getCause().getCause();
+ } else {
+ throw ex;
+ }
+ }
- if (needTopDocs) {
+ ScoreMode scoreMode = SolrMultiCollectorManager.scoreMode(firstCollectors);
- collectors.add(
- new TopDocsCM(len, cmd, firstCollectors,
firstTopDocsCollectorIndex));
- }
- if (needMaxScore) {
- collectors.add(
- new MaxScoreCM(firstCollectors,
firstMaxScoreCollectorIndex));
- }
- if (needDocSet) {
- int maxDoc = searcher.getRawReader().maxDoc();
- log.error("raw read max={}", searcher.getRawReader().maxDoc());
+ return new SearchResult(scoreMode, ret);
+ }
- collectors.add(
- new DocSetCM(maxDoc));
- }
+ static boolean allowMT(DelegatingCollector postFilter, QueryCommand cmd,
Query query) {
+ if (postFilter != null || cmd.getSegmentTerminateEarly() ||
cmd.getTimeAllowed() > 0) {
+ return false;
+ } else {
+ MTCollectorQueryCheck allowMT = new MTCollectorQueryCheck();
+ query.visit(allowMT);
+ return allowMT.allowed();
+ }
+ }
- @SuppressWarnings({"unchecked", "rawtypes"})
- CollectorManager<Collector, Object>[] colls = collectors.toArray(new
CollectorManager[0]);
- SolrMultiCollectorManager manager = new
SolrMultiCollectorManager(colls);
- Object[] ret;
- try {
- ret = searcher.search(query, manager);
- } catch (Exception ex) {
- if (ex instanceof RuntimeException
- && ex.getCause() != null
- && ex.getCause() instanceof ExecutionException
- && ex.getCause().getCause() != null
- && ex.getCause().getCause() instanceof RuntimeException) {
- throw (RuntimeException) ex.getCause().getCause();
- } else {
- throw ex;
- }
- }
+ /**
+ * A {@link QueryVisitor} that recurses through the query tree, determining
if all queries support
+ * multi-threaded collecting.
+ */
+ private static class MTCollectorQueryCheck extends QueryVisitor {
- ScoreMode scoreMode =
SolrMultiCollectorManager.scoreMode(firstCollectors);
+ private QueryVisitor subVisitor = this;
- return new SearchResult(scoreMode, ret);
+ private boolean allowMt(Query query) {
+ if (query instanceof RankQuery || query instanceof GraphQuery || query
instanceof JoinQuery) {
+ return false;
+ }
+ return true;
}
- static boolean allowMT(DelegatingCollector postFilter, QueryCommand cmd,
Query query) {
- if (postFilter != null || cmd.getSegmentTerminateEarly() ||
cmd.getTimeAllowed() > 0) {
- return false;
- } else {
- MTCollectorQueryCheck allowMT = new MTCollectorQueryCheck();
- query.visit(allowMT);
- return allowMT.allowed();
- }
+ @Override
+ public void consumeTerms(Query query, Term... terms) {
+ if (!allowMt(query)) {
+ subVisitor = EMPTY_VISITOR;
+ }
}
- /**
- * A {@link QueryVisitor} that recurses through the query tree,
determining if all queries support
- * multi-threaded collecting.
- */
- private static class MTCollectorQueryCheck extends QueryVisitor {
-
- private QueryVisitor subVisitor = this;
-
- private boolean allowMt(Query query) {
- if (query instanceof RankQuery || query instanceof GraphQuery ||
query instanceof JoinQuery) {
- return false;
- }
- return true;
- }
-
- @Override
- public void consumeTerms(Query query, Term... terms) {
- if (!allowMt(query)) {
- subVisitor = EMPTY_VISITOR;
- }
- }
-
- @Override
- public void consumeTermsMatching(
- Query query, String field, Supplier<ByteRunAutomaton>
automaton) {
- if (!allowMt(query)) {
- subVisitor = EMPTY_VISITOR;
- } else {
- super.consumeTermsMatching(query, field, automaton);
- }
- }
+ @Override
+ public void consumeTermsMatching(
+ Query query, String field, Supplier<ByteRunAutomaton> automaton) {
+ if (!allowMt(query)) {
+ subVisitor = EMPTY_VISITOR;
+ } else {
+ super.consumeTermsMatching(query, field, automaton);
+ }
+ }
- @Override
- public void visitLeaf(Query query) {
- if (!allowMt(query)) {
- subVisitor = EMPTY_VISITOR;
- }
- }
+ @Override
+ public void visitLeaf(Query query) {
+ if (!allowMt(query)) {
+ subVisitor = EMPTY_VISITOR;
+ }
+ }
- @Override
- public QueryVisitor getSubVisitor(BooleanClause.Occur occur, Query
parent) {
- return subVisitor;
- }
+ @Override
+ public QueryVisitor getSubVisitor(BooleanClause.Occur occur, Query parent)
{
+ return subVisitor;
+ }
- public boolean allowed() {
- return subVisitor != EMPTY_VISITOR;
- }
+ public boolean allowed() {
+ return subVisitor != EMPTY_VISITOR;
}
+ }
- static class MaxScoreResult {
- final float maxScore;
+ static class MaxScoreResult {
+ final float maxScore;
- public MaxScoreResult(float maxScore) {
- this.maxScore = maxScore;
- }
+ public MaxScoreResult(float maxScore) {
+ this.maxScore = maxScore;
}
+ }
- static class FixedBitSetCollector extends SimpleCollector {
- private final FixedBitSet bitSet;
+ static class FixedBitSetCollector extends SimpleCollector {
+ private final FixedBitSet bitSet;
- private int docBase;
+ private int docBase;
- FixedBitSetCollector(int maxDoc) {
- this.bitSet = new FixedBitSet(maxDoc);
- }
+ FixedBitSetCollector(int maxDoc) {
+ this.bitSet = new FixedBitSet(maxDoc);
+ }
- @Override
- protected void doSetNextReader(LeafReaderContext context) throws
IOException {
- this.docBase = context.docBase;
- }
+ @Override
+ protected void doSetNextReader(LeafReaderContext context) throws
IOException {
+ this.docBase = context.docBase;
+ }
- @Override
- public void collect(int doc) throws IOException {
- this.bitSet.set(this.docBase + doc);
- }
+ @Override
+ public void collect(int doc) throws IOException {
+ this.bitSet.set(this.docBase + doc);
+ }
- @Override
- public ScoreMode scoreMode() {
- return ScoreMode.COMPLETE_NO_SCORES;
- }
+ @Override
+ public ScoreMode scoreMode() {
+ return ScoreMode.COMPLETE_NO_SCORES;
+ }
- FixedBitSet bitSet() {
- return this.bitSet;
- }
+ FixedBitSet bitSet() {
+ return this.bitSet;
}
+ }
- static class SearchResult {
- final ScoreMode scoreMode;
- private final Object[] result;
+ static class SearchResult {
+ final ScoreMode scoreMode;
+ private final Object[] result;
- public SearchResult(ScoreMode scoreMode, Object[] result) {
- this.scoreMode = scoreMode;
- this.result = result;
- }
+ public SearchResult(ScoreMode scoreMode, Object[] result) {
+ this.scoreMode = scoreMode;
+ this.result = result;
+ }
- public TopDocsResult getTopDocsResult() {
- for (Object res : result) {
- if (res instanceof TopDocsResult) {
- return (TopDocsResult) res;
- }
- }
- return null;
+ public TopDocsResult getTopDocsResult() {
+ for (Object res : result) {
+ if (res instanceof TopDocsResult) {
+ return (TopDocsResult) res;
}
+ }
+ return null;
+ }
- public float getMaxScore(int totalHits) {
- if (totalHits > 0) {
- for (Object res : result) {
- if (res instanceof MaxScoreResult) {
- return ((MaxScoreResult) res).maxScore;
- }
- }
- return Float.NaN;
- } else {
- return 0.0f;
- }
- }
+ public float getMaxScore(int totalHits) {
+ if (totalHits > 0) {
+ for (Object res : result) {
+ if (res instanceof MaxScoreResult) {
+ return ((MaxScoreResult) res).maxScore;
+ }
+ }
+ return Float.NaN;
+ } else {
+ return 0.0f;
+ }
+ }
- public FixedBitSet getFixedBitSet() {
- for (Object res : result) {
- if (res instanceof FixedBitSet) {
- return (FixedBitSet) res;
- }
- }
- return null;
+ public FixedBitSet getFixedBitSet() {
+ for (Object res : result) {
+ if (res instanceof FixedBitSet) {
+ return (FixedBitSet) res;
}
+ }
+ return null;
}
+ }
- private static class MaxScoreCM implements CollectorManager<Collector,
Object> {
- private final Collector[] firstCollectors;
- private final int firstMaxScoreCollectorIndex;
+ private static class MaxScoreCM implements CollectorManager<Collector,
Object> {
+ private final Collector[] firstCollectors;
+ private final int firstMaxScoreCollectorIndex;
- public MaxScoreCM(Collector[] firstCollectors, int
firstMaxScoreCollectorIndex) {
- this.firstCollectors = firstCollectors;
- this.firstMaxScoreCollectorIndex = firstMaxScoreCollectorIndex;
- }
+ public MaxScoreCM(Collector[] firstCollectors, int
firstMaxScoreCollectorIndex) {
+ this.firstCollectors = firstCollectors;
+ this.firstMaxScoreCollectorIndex = firstMaxScoreCollectorIndex;
+ }
- @Override
- public Collector newCollector() throws IOException {
- MaxScoreCollector collector = new MaxScoreCollector();
- if (firstCollectors[firstMaxScoreCollectorIndex] == null) {
- firstCollectors[firstMaxScoreCollectorIndex] = collector;
- }
- return collector;
- }
+ @Override
+ public Collector newCollector() throws IOException {
+ MaxScoreCollector collector = new MaxScoreCollector();
+ if (firstCollectors[firstMaxScoreCollectorIndex] == null) {
+ firstCollectors[firstMaxScoreCollectorIndex] = collector;
+ }
+ return collector;
+ }
- @Override
- @SuppressWarnings("rawtypes")
- public Object reduce(Collection collectors) throws IOException {
+ @Override
+ @SuppressWarnings("rawtypes")
+ public Object reduce(Collection collectors) throws IOException {
- MaxScoreCollector collector;
- float maxScore = 0.0f;
- for (Iterator var4 = collectors.iterator();
- var4.hasNext();
- maxScore = Math.max(maxScore, collector.getMaxScore())) {
- collector = (MaxScoreCollector) var4.next();
- }
+ MaxScoreCollector collector;
+ float maxScore = 0.0f;
+ for (Iterator var4 = collectors.iterator();
+ var4.hasNext();
+ maxScore = Math.max(maxScore, collector.getMaxScore())) {
+ collector = (MaxScoreCollector) var4.next();
+ }
- return new MaxScoreResult(maxScore);
- }
+ return new MaxScoreResult(maxScore);
}
+ }
- private static class DocSetCM implements CollectorManager<Collector,
Object> {
- private final int maxDoc;
+ private static class DocSetCM implements CollectorManager<Collector, Object>
{
+ private final int maxDoc;
- public DocSetCM(int maxDoc) {
- this.maxDoc = maxDoc;
- }
+ public DocSetCM(int maxDoc) {
+ this.maxDoc = maxDoc;
+ }
- @Override
- public Collector newCollector() throws IOException {
- // TODO: add to firstCollectors here? or if not have comment
w.r.t. why not adding
- return new FixedBitSetCollector(maxDoc);
- }
+ @Override
+ public Collector newCollector() throws IOException {
+ // TODO: add to firstCollectors here? or if not have comment w.r.t. why
not adding
+ return new FixedBitSetCollector(maxDoc);
+ }
- @Override
- @SuppressWarnings({"rawtypes"})
- public Object reduce(Collection collectors) throws IOException {
- final FixedBitSet reduced = new FixedBitSet(maxDoc);
- for (Object collector : collectors) {
- if (collector instanceof FixedBitSetCollector) {
- reduced.or(((FixedBitSetCollector) collector).bitSet());
- }
- }
- return reduced;
+ @Override
+ @SuppressWarnings({"rawtypes"})
+ public Object reduce(Collection collectors) throws IOException {
+ final FixedBitSet reduced = new FixedBitSet(maxDoc);
+ for (Object collector : collectors) {
+ if (collector instanceof FixedBitSetCollector) {
+ reduced.or(((FixedBitSetCollector) collector).bitSet());
}
+ }
+ return reduced;
+ }
+ }
+
+ private class TopDocsCM implements CollectorManager<Collector, Object> {
+ private final int len;
+ private final QueryCommand cmd;
+ private final Collector[] firstCollectors;
+ private final int firstTopDocsCollectorIndex;
+
+ public TopDocsCM(
+ int len, QueryCommand cmd, Collector[] firstCollectors, int
firstTopDocsCollectorIndex) {
+ this.len = len;
+ this.cmd = cmd;
+ this.firstCollectors = firstCollectors;
+ this.firstTopDocsCollectorIndex = firstTopDocsCollectorIndex;
}
- private class TopDocsCM implements CollectorManager<Collector, Object> {
- private final int len;
- private final QueryCommand cmd;
- private final Collector[] firstCollectors;
- private final int firstTopDocsCollectorIndex;
+ @Override
+ public Collector newCollector() throws IOException {
+ @SuppressWarnings("rawtypes")
+ TopDocsCollector collector = searcher.buildTopDocsCollector(len, cmd);
+ if (firstCollectors[firstTopDocsCollectorIndex] == null) {
+ firstCollectors[firstTopDocsCollectorIndex] = collector;
+ }
+ return collector;
+ }
- public TopDocsCM(int len, QueryCommand cmd, Collector[]
firstCollectors, int firstTopDocsCollectorIndex) {
- this.len = len;
- this.cmd = cmd;
- this.firstCollectors = firstCollectors;
- this.firstTopDocsCollectorIndex = firstTopDocsCollectorIndex;
- }
+ @Override
+ @SuppressWarnings("rawtypes")
+ public Object reduce(Collection collectors) throws IOException {
+
+ TopDocs[] topDocs = new TopDocs[collectors.size()];
- @Override
- public Collector newCollector() throws IOException {
- @SuppressWarnings("rawtypes")
- TopDocsCollector collector = searcher.buildTopDocsCollector(len,
cmd);
- if (firstCollectors[firstTopDocsCollectorIndex] == null) {
- firstCollectors[firstTopDocsCollectorIndex] = collector;
- }
- return collector;
+ int totalHits = -1;
+ int i = 0;
+
+ Collector collector;
+ for (Object o : collectors) {
+ collector = (Collector) o;
+ if (collector instanceof TopDocsCollector) {
+ TopDocs td = ((TopDocsCollector) collector).topDocs(0, len);
+ assert td != null : Arrays.asList(topDocs);
+ topDocs[i++] = td;
}
+ }
+
+ TopDocs mergedTopDocs = null;
- @Override
- @SuppressWarnings("rawtypes")
- public Object reduce(Collection collectors) throws IOException {
-
- TopDocs[] topDocs = new TopDocs[collectors.size()];
-
- int totalHits = -1;
- int i = 0;
-
- Collector collector;
- for (Object o : collectors) {
- collector = (Collector) o;
- if (collector instanceof TopDocsCollector) {
- TopDocs td = ((TopDocsCollector) collector).topDocs(0,
len);
- assert td != null : Arrays.asList(topDocs);
- topDocs[i++] = td;
- }
- }
-
- TopDocs mergedTopDocs = null;
-
- if (topDocs.length > 0 && topDocs[0] != null) {
- if (topDocs[0] instanceof TopFieldDocs) {
- TopFieldDocs[] topFieldDocs =
- Arrays.copyOf(topDocs, topDocs.length,
TopFieldDocs[].class);
- mergedTopDocs =
TopFieldDocs.merge(searcher.weightSort(cmd.getSort()), len, topFieldDocs);
- } else {
- mergedTopDocs = TopDocs.merge(0, len, topDocs);
- }
- totalHits = (int) mergedTopDocs.totalHits.value;
- }
- return new TopDocsResult(mergedTopDocs, totalHits);
+ if (topDocs.length > 0 && topDocs[0] != null) {
+ if (topDocs[0] instanceof TopFieldDocs) {
+ TopFieldDocs[] topFieldDocs =
+ Arrays.copyOf(topDocs, topDocs.length, TopFieldDocs[].class);
+ mergedTopDocs =
TopFieldDocs.merge(searcher.weightSort(cmd.getSort()), len, topFieldDocs);
+ } else {
+ mergedTopDocs = TopDocs.merge(0, len, topDocs);
}
+ totalHits = (int) mergedTopDocs.totalHits.value;
+ }
+ return new TopDocsResult(mergedTopDocs, totalHits);
}
+ }
- static class TopDocsResult {
- final TopDocs topDocs;
- final int totalHits;
+ static class TopDocsResult {
+ final TopDocs topDocs;
+ final int totalHits;
- public TopDocsResult(TopDocs topDocs, int totalHits) {
- this.topDocs = topDocs;
- this.totalHits = totalHits;
- }
+ public TopDocsResult(TopDocs topDocs, int totalHits) {
+ this.topDocs = topDocs;
+ this.totalHits = totalHits;
}
+ }
}
diff --git a/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
b/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
index 5ccad5388ff..1f589d17415 100644
--- a/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
+++ b/solr/core/src/java/org/apache/solr/search/SolrIndexSearcher.java
@@ -1917,8 +1917,9 @@ public class SolrIndexSearcher extends IndexSearcher
implements Closeable, SolrI
if (log.isInfoEnabled()) {
log.info("using CollectorManager");
}
- final MultiThreadedSearcher.SearchResult searchResult = new
MultiThreadedSearcher(this).
- searchCollectorManagers(len, cmd, query, true, needScores, false);
+ final MultiThreadedSearcher.SearchResult searchResult =
+ new MultiThreadedSearcher(this)
+ .searchCollectorManagers(len, cmd, query, true, needScores,
false);
scoreModeUsed = searchResult.scoreMode;
MultiThreadedSearcher.TopDocsResult topDocsResult =
searchResult.getTopDocsResult();
@@ -2046,8 +2047,9 @@ public class SolrIndexSearcher extends IndexSearcher
implements Closeable, SolrI
log.debug("using CollectorManager");
boolean needMaxScore = needScores;
- MultiThreadedSearcher.SearchResult searchResult = new
MultiThreadedSearcher(this).
- searchCollectorManagers(len, cmd, query, true, needMaxScore, true);
+ MultiThreadedSearcher.SearchResult searchResult =
+ new MultiThreadedSearcher(this)
+ .searchCollectorManagers(len, cmd, query, true, needMaxScore,
true);
MultiThreadedSearcher.TopDocsResult topDocsResult =
searchResult.getTopDocsResult();
totalHits = topDocsResult.totalHits;
topDocs = topDocsResult.topDocs;