David Smiley created SOLR-18126:
-----------------------------------
Summary: Benchmarks: decouple from MiniSolrCloudCluster; support
remote
Key: SOLR-18126
URL: https://issues.apache.org/jira/browse/SOLR-18126
Project: Solr
Issue Type: Test
Components: benchmarks
Reporter: David Smiley
Assignee: David Smiley
Currently all JMH benchmarks in solr/benchmark are hard-wired to
MiniSolrCloudCluster via MiniClusterState.MiniClusterBenchState. This makes it
impossible to run benchmarks against a real Solr instance without code changes.
Introduce a SolrBenchBackend interface with MiniClusterBackend (extracts
existing mini-cluster logic) and RemoteSolrBackend (connects to an existing
Solr via solr.bench.url system property) implementations. A new SolrBenchState
JMH @State class replaces MiniClusterState, selecting the backend at runtime
via a solr.bench.backend system property (minicluster by default).
All existing benchmark classes (SimpleSearch, FilterCache, JsonFaceting,
NumericSearch, QueryResponseWriters, ExitableDirectoryReaderSearch,
StreamingSearch, CloudIndexing) are updated to use SolrBenchState. System
properties previously set on benchmark setup that configure Solr internals
(e.g. cache settings, merge policy) are converted to collection-level creation
properties passed through createCollection, keeping them compatible with remote
backends.
MiniClusterState.java is deleted as part of this change.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]