Skip to content

Commit 06950c6

Browse files
authored
SOLR-13350: multi-threaded search: (undocumented) opt-out ability (#2570)
On a request level, multiThreaded=false is already possible but for full (node level) opt-out SolrIndexSearcher must pass a null executor to Lucene's IndexSearcher.
1 parent 31129e4 commit 06950c6

File tree

1 file changed

+10
-5
lines changed

1 file changed

+10
-5
lines changed

Diff for: solr/core/src/java/org/apache/solr/core/CoreContainer.java

+10-5
Original file line numberDiff line numberDiff line change
@@ -442,11 +442,16 @@ public CoreContainer(NodeConfig config, CoresLocator locator, boolean asyncSolrC
442442

443443
this.allowListUrlChecker = AllowListUrlChecker.create(config);
444444

445-
this.collectorExecutor =
446-
ExecutorUtil.newMDCAwareCachedThreadPool(
447-
cfg.getIndexSearcherExecutorThreads(), // thread count
448-
cfg.getIndexSearcherExecutorThreads() * 1000, // queue size
449-
new SolrNamedThreadFactory("searcherCollector"));
445+
final int indexSearcherExecutorThreads = cfg.getIndexSearcherExecutorThreads();
446+
if (0 < indexSearcherExecutorThreads) {
447+
this.collectorExecutor =
448+
ExecutorUtil.newMDCAwareCachedThreadPool(
449+
indexSearcherExecutorThreads, // thread count
450+
indexSearcherExecutorThreads * 1000, // queue size
451+
new SolrNamedThreadFactory("searcherCollector"));
452+
} else {
453+
this.collectorExecutor = null;
454+
}
450455
}
451456

452457
@SuppressWarnings({"unchecked"})

0 commit comments

Comments
 (0)