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]

Reply via email to