Skip to content

SOLR-17665: Avoid search executor overhead when multiThreaded=false - #5273

Draft
arup-chauhan wants to merge 1 commit into
apache:mainfrom
arup-chauhan:codex/solr-17665-executor-isolation
Draft

arup-chauhan wants to merge 1 commit into
apache:mainfrom
arup-chauhan:codex/solr-17665-executor-isolation

Conversation

@arup-chauhan

@arup-chauhan arup-chauhan commented Oct 31, 2026 •

Copy link
Copy Markdown
Contributor

Working on: SOLR-17665

Description

This draft investigates search executor overhead when multiThreaded=false.

The current patch prepares the benchmark. Reproducing the regression and implementing a fix remain pending.

Changes so far

  • Configure indexSearcherExecutorThreads explicitly in the benchmark cluster.
  • Control the worker count and query's multiThreaded flag independently.
  • Record completed worker tasks outside the timed query loop.
  • Make document count and timeout configurable for small trial runs.

The comparison uses three cases: pool disabled, pool enabled with multiThreaded=false, and pool enabled with multiThreaded=true.

Next, measure the pool's overhead with multiThreaded=false and profile any slowdown. Those results will guide whether request-level executor isolation is needed.

Validation

  • Benchmark compilation and tidy passed.
  • ./gradlew --no-daemon check -x test and updateLicenses passed.
  • Three short JMH runs passed using 1,000 documents and one client thread. Worker activity was recorded in the multithreaded case.

These runs verify the setup. They do not establish performance results. The full unit-test suite has not been run.

Code and PR description generated with OpenAI Codex and personally reviewed by me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant