This is an automated email from the ASF dual-hosted git repository.
dsmiley pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/solr.git
The following commit(s) were added to refs/heads/main by this push:
new 9a1c5200d46 Improve usages of GenericSolrRequest (request type, http
method, requiresCollection) (#3423)
9a1c5200d46 is described below
commit 9a1c5200d46dfc2efe2485e654f466d37ebac544
Author: David Smiley <[email protected]>
AuthorDate: Wed Aug 27 13:49:16 2025 -0400
Improve usages of GenericSolrRequest (request type, http method,
requiresCollection) (#3423)
---
.../src/java/org/apache/solr/cli/ExportTool.java | 6 ++-
.../designer/SchemaDesignerConfigSetHelper.java | 9 +++-
.../processor/DistributedUpdateProcessor.java | 6 +--
.../cloud/api/collections/TestCollectionAPI.java | 8 ++-
.../solr/handler/TestReplicationHandler.java | 10 ++--
.../solr/handler/TestStressThreadBackup.java | 9 +++-
.../src/test/org/apache/solr/pkg/TestPackages.java | 31 +++++-------
.../org/apache/solr/search/TestTaskManagement.java | 17 +++++--
.../org/apache/solr/util/TestCborDataFormat.java | 58 +++++++++++++---------
.../solr/prometheus/scraper/SolrScraper.java | 7 +--
.../solrj/impl/CloudHttp2SolrClientRetryTest.java | 1 -
.../cloud/AbstractBasicDistributedZkTestBase.java | 6 ++-
.../apache/solr/handler/BackupStatusChecker.java | 13 ++++-
13 files changed, 108 insertions(+), 73 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/cli/ExportTool.java
b/solr/core/src/java/org/apache/solr/cli/ExportTool.java
index c742c00999c..0120cba94b6 100644
--- a/solr/core/src/java/org/apache/solr/cli/ExportTool.java
+++ b/solr/core/src/java/org/apache/solr/cli/ExportTool.java
@@ -264,8 +264,10 @@ public class ExportTool extends ToolBase {
new GenericSolrRequest(
SolrRequest.METHOD.GET,
"/schema/uniquekey",
- SolrParams.of("collection", coll))
- .setRequiresCollection(true));
+ SolrRequest.SolrRequestType.ADMIN,
+ SolrParams.of())
+ .setRequiresCollection(true),
+ coll);
uniqueKey = (String) response.get("uniqueKey");
}
diff --git
a/solr/core/src/java/org/apache/solr/handler/designer/SchemaDesignerConfigSetHelper.java
b/solr/core/src/java/org/apache/solr/handler/designer/SchemaDesignerConfigSetHelper.java
index 3def33a6e8c..77cbcc7e900 100644
---
a/solr/core/src/java/org/apache/solr/handler/designer/SchemaDesignerConfigSetHelper.java
+++
b/solr/core/src/java/org/apache/solr/handler/designer/SchemaDesignerConfigSetHelper.java
@@ -130,9 +130,14 @@ class SchemaDesignerConfigSetHelper implements
SchemaDesignerConstants {
solrParams.set("analysis.showmatch", true);
solrParams.set("analysis.fieldname", fieldName);
solrParams.set("analysis.fieldvalue", "POST");
- var request = new GenericSolrRequest(SolrRequest.METHOD.POST,
"/analysis/field", solrParams);
+ var request =
+ new GenericSolrRequest(
+ SolrRequest.METHOD.POST,
+ "/analysis/field",
+ SolrRequest.SolrRequestType.ADMIN,
+ solrParams)
+ .setRequiresCollection(true);
request.withContent(fieldText.getBytes(StandardCharsets.UTF_8),
"text/plain");
- request.setRequiresCollection(true);
request.setResponseParser(new JsonMapResponseParser());
try {
var resp = request.process(cloudClient(), mutableId).getResponse();
diff --git
a/solr/core/src/java/org/apache/solr/update/processor/DistributedUpdateProcessor.java
b/solr/core/src/java/org/apache/solr/update/processor/DistributedUpdateProcessor.java
index 2edbeb6c345..0dc45a046c9 100644
---
a/solr/core/src/java/org/apache/solr/update/processor/DistributedUpdateProcessor.java
+++
b/solr/core/src/java/org/apache/solr/update/processor/DistributedUpdateProcessor.java
@@ -32,7 +32,6 @@ import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.SolrRequest.METHOD;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.request.GenericSolrRequest;
-import org.apache.solr.client.solrj.response.SimpleSolrResponse;
import org.apache.solr.common.SolrException;
import org.apache.solr.common.SolrException.ErrorCode;
import org.apache.solr.common.SolrInputDocument;
@@ -681,8 +680,9 @@ public class DistributedUpdateProcessor extends
UpdateRequestProcessor {
params.set(DISTRIB, false);
params.set("getInputDocument", id);
params.set("onlyIfActive", true);
- SolrRequest<SimpleSolrResponse> ur =
- new GenericSolrRequest(METHOD.GET, "/get",
params).setRequiresCollection(true);
+ var ur =
+ new GenericSolrRequest(METHOD.GET, "/get",
SolrRequest.SolrRequestType.ADMIN, params)
+ .setRequiresCollection(true);
String leaderUrl = getLeaderUrl(id);
diff --git
a/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
b/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
index 26d6528881f..adba8db8ab3 100644
---
a/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
+++
b/solr/core/src/test/org/apache/solr/cloud/api/collections/TestCollectionAPI.java
@@ -640,7 +640,6 @@ public class TestCollectionAPI extends
ReplicaPropertiesBase {
params.set("collection", "notAnAliasOrCollection");
request =
new GenericSolrRequest(METHOD.GET, "/admin/collections",
SolrRequestType.ADMIN, params);
- request.setPath("/admin/collections");
// SOLR-12938 - this should still cause an exception
try {
@@ -1258,11 +1257,10 @@ public class TestCollectionAPI extends
ReplicaPropertiesBase {
private void missingParamsError(CloudSolrClient client, ModifiableSolrParams
origParams)
throws IOException, SolrServerException {
- GenericSolrRequest request;
try {
- request =
+ var request =
new GenericSolrRequest(
- METHOD.GET, "/admin/collections", SolrRequestType.ADMIN,
origParams);
+ METHOD.POST, "/admin/collections", SolrRequestType.ADMIN,
origParams);
client.request(request);
fail("Should have thrown a SolrException due to lack of a required
parameter.");
} catch (SolrException se) {
@@ -1352,7 +1350,7 @@ public class TestCollectionAPI extends
ReplicaPropertiesBase {
params.set("numShards", "1");
params.set(CollectionAdminParams.PER_REPLICA_STATE, "False");
var request =
- new GenericSolrRequest(METHOD.GET, "/admin/collections",
SolrRequestType.ADMIN, params);
+ new GenericSolrRequest(METHOD.POST, "/admin/collections",
SolrRequestType.ADMIN, params);
try {
client.request(request);
diff --git
a/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
b/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
index ad8bdcc792f..765a49f058a 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestReplicationHandler.java
@@ -1556,10 +1556,11 @@ public class TestReplicationHandler extends
SolrTestCaseJ4 {
{ // initial request w/o any committed docs
final String backupName = "empty_backup1";
- final GenericSolrRequest req =
+ final var req =
new GenericSolrRequest(
- SolrRequest.METHOD.GET,
+ SolrRequest.METHOD.POST,
"/replication",
+ SolrRequest.SolrRequestType.ADMIN,
params("command", "backup", "location",
backupDir.toString(), "name", backupName))
.setRequiresCollection(true);
final TimeOut timeout = new TimeOut(30, TimeUnit.SECONDS,
TimeSource.NANO_TIME);
@@ -1579,10 +1580,11 @@ public class TestReplicationHandler extends
SolrTestCaseJ4 {
{ // second backup w/uncommitted doc
final String backupName = "empty_backup2";
- final GenericSolrRequest req =
+ final var req =
new GenericSolrRequest(
- SolrRequest.METHOD.GET,
+ SolrRequest.METHOD.POST,
"/replication",
+ SolrRequest.SolrRequestType.ADMIN,
params("command", "backup", "location",
backupDir.toString(), "name", backupName))
.setRequiresCollection(true);
final TimeOut timeout = new TimeOut(30, TimeUnit.SECONDS,
TimeSource.NANO_TIME);
diff --git
a/solr/core/src/test/org/apache/solr/handler/TestStressThreadBackup.java
b/solr/core/src/test/org/apache/solr/handler/TestStressThreadBackup.java
index 838afd394ad..885152f4794 100644
--- a/solr/core/src/test/org/apache/solr/handler/TestStressThreadBackup.java
+++ b/solr/core/src/test/org/apache/solr/handler/TestStressThreadBackup.java
@@ -40,6 +40,7 @@ import org.apache.lucene.tests.util.LuceneTestCase.Nightly;
import org.apache.lucene.tests.util.LuceneTestCase.SuppressCodecs;
import org.apache.lucene.tests.util.TestUtil;
import org.apache.solr.client.solrj.SolrClient;
+import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.request.CollectionAdminRequest;
import org.apache.solr.client.solrj.request.GenericSolrRequest;
import org.apache.solr.client.solrj.request.UpdateRequest;
@@ -134,8 +135,12 @@ public class TestStressThreadBackup extends
SolrCloudTestCase {
final BackupStatusChecker backupStatus = new
BackupStatusChecker(coreClient);
/** no solrj API for ReplicationHandler */
- private GenericSolrRequest makeReplicationReq(SolrParams p) {
- return new GenericSolrRequest(GenericSolrRequest.METHOD.GET,
"/replication", p)
+ private SolrRequest<?> makeReplicationReq(SolrParams p) {
+ return new GenericSolrRequest(
+ GenericSolrRequest.METHOD.POST,
+ "/replication",
+ SolrRequest.SolrRequestType.ADMIN,
+ p)
.setRequiresCollection(true);
}
diff --git a/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
b/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
index 092877e6add..69d1df37544 100644
--- a/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
+++ b/solr/core/src/test/org/apache/solr/pkg/TestPackages.java
@@ -295,6 +295,7 @@ public class TestPackages extends SolrCloudTestCase {
new GenericSolrRequest(
SolrRequest.METHOD.GET,
"/stream",
+ SolrRequest.SolrRequestType.ADMIN,
new MapSolrParams(
Map.of("collection", COLLECTION_NAME, WT, JAVABIN,
"action", "plugins")))
.setRequiresCollection(true),
@@ -436,18 +437,14 @@ public class TestPackages extends SolrCloudTestCase {
ModifiableSolrParams params = new ModifiableSolrParams();
params.add("collection", COLLECTION_NAME);
- new GenericSolrRequest(SolrRequest.METHOD.POST, "/config/params", params) {
+ new GenericSolrRequest(
+ SolrRequest.METHOD.POST, "/config/params",
SolrRequest.SolrRequestType.ADMIN, params) {
@Override
public RequestWriter.ContentWriter getContentWriter(String expectedType)
{
return new RequestWriter.StringPayloadContentWriter(
"{set:{PKG_VERSIONS:{mypkg : '1.1'}}}", ClientUtils.TEXT_JSON);
}
-
- @Override
- public boolean requiresCollection() {
- return true;
- }
- }.process(cluster.getSolrClient());
+ }.setRequiresCollection(true).process(cluster.getSolrClient());
add.version = "2.1";
add.files = Arrays.asList(new String[] {FILE3, URP2, EXPR1});
@@ -465,18 +462,14 @@ public class TestPackages extends SolrCloudTestCase {
verifyComponent(
cluster.getSolrClient(), COLLECTION_NAME, "requestHandler",
"/runtime", "mypkg", "1.1");
- new GenericSolrRequest(SolrRequest.METHOD.POST, "/config/params", params) {
+ new GenericSolrRequest(
+ SolrRequest.METHOD.POST, "/config/params",
SolrRequest.SolrRequestType.ADMIN, params) {
@Override
public RequestWriter.ContentWriter getContentWriter(String expectedType)
{
return new RequestWriter.StringPayloadContentWriter(
"{set:{PKG_VERSIONS:{mypkg : '2.1'}}}", ClientUtils.TEXT_JSON);
}
-
- @Override
- public boolean requiresCollection() {
- return true;
- }
- }.process(cluster.getSolrClient());
+ }.setRequiresCollection(true).process(cluster.getSolrClient());
// now, let's force every collection using 'mypkg' to refresh
// so that it uses version 2.1
@@ -567,13 +560,15 @@ public class TestPackages extends SolrCloudTestCase {
"meta",
"true"));
- GenericSolrRequest req1 =
- new GenericSolrRequest(SolrRequest.METHOD.GET, "/config/" +
componentType, params)
- .setRequiresCollection(true);
TestDistribFileStore.assertResponseValues(
10,
client,
- req1,
+ new GenericSolrRequest(
+ SolrRequest.METHOD.GET,
+ "/config/" + componentType,
+ SolrRequest.SolrRequestType.ADMIN,
+ params)
+ .setRequiresCollection(true),
Map.of(
":config:" + componentType + ":" + componentName +
":_packageinfo_:package", pkg,
":config:" + componentType + ":" + componentName +
":_packageinfo_:version", version));
diff --git a/solr/core/src/test/org/apache/solr/search/TestTaskManagement.java
b/solr/core/src/test/org/apache/solr/search/TestTaskManagement.java
index 49fc8017317..bb899761257 100644
--- a/solr/core/src/test/org/apache/solr/search/TestTaskManagement.java
+++ b/solr/core/src/test/org/apache/solr/search/TestTaskManagement.java
@@ -38,6 +38,7 @@ import org.apache.solr.client.solrj.request.QueryRequest;
import org.apache.solr.cloud.SolrCloudTestCase;
import org.apache.solr.common.SolrInputDocument;
import org.apache.solr.common.params.ModifiableSolrParams;
+import org.apache.solr.common.params.SolrParams;
import org.apache.solr.common.util.ExecutorUtil;
import org.apache.solr.common.util.NamedList;
import org.hamcrest.Matcher;
@@ -106,8 +107,9 @@ public class TestTaskManagement extends SolrCloudTestCase {
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("queryUUID", "foobar");
- GenericSolrRequest request =
- new GenericSolrRequest(SolrRequest.METHOD.GET, "/tasks/cancel", params)
+ var request =
+ new GenericSolrRequest(
+ SolrRequest.METHOD.GET, "/tasks/cancel",
SolrRequest.SolrRequestType.ADMIN, params)
.setRequiresCollection(true);
NamedList<Object> queryResponse =
cluster.getSolrClient(COLLECTION_NAME).request(request);
@@ -185,7 +187,11 @@ public class TestTaskManagement extends SolrCloudTestCase {
cluster
.getSolrClient(COLLECTION_NAME)
.request(
- new GenericSolrRequest(SolrRequest.METHOD.GET, "/tasks/list")
+ new GenericSolrRequest(
+ SolrRequest.METHOD.GET,
+ "/tasks/list",
+ SolrRequest.SolrRequestType.ADMIN,
+ SolrParams.of())
.setRequiresCollection(true));
return (NamedList<String>) response.get("taskList");
}
@@ -195,8 +201,9 @@ public class TestTaskManagement extends SolrCloudTestCase {
ModifiableSolrParams params = new ModifiableSolrParams();
params.set("taskUUID", "25");
- GenericSolrRequest request =
- new GenericSolrRequest(SolrRequest.METHOD.GET, "/tasks/list", params)
+ var request =
+ new GenericSolrRequest(
+ SolrRequest.METHOD.GET, "/tasks/list",
SolrRequest.SolrRequestType.ADMIN, params)
.setRequiresCollection(true);
NamedList<Object> queryResponse =
cluster.getSolrClient(COLLECTION_NAME).request(request);
diff --git a/solr/core/src/test/org/apache/solr/util/TestCborDataFormat.java
b/solr/core/src/test/org/apache/solr/util/TestCborDataFormat.java
index 074813c731d..2c60ecd71f4 100644
--- a/solr/core/src/test/org/apache/solr/util/TestCborDataFormat.java
+++ b/solr/core/src/test/org/apache/solr/util/TestCborDataFormat.java
@@ -40,17 +40,17 @@ import
org.apache.solr.client.solrj.impl.InputStreamResponseParser;
import org.apache.solr.client.solrj.request.CollectionAdminRequest;
import org.apache.solr.client.solrj.request.GenericSolrRequest;
import org.apache.solr.client.solrj.request.QueryRequest;
-import org.apache.solr.client.solrj.request.RequestWriter;
import org.apache.solr.client.solrj.request.UpdateRequest;
import org.apache.solr.client.solrj.response.QueryResponse;
+import org.apache.solr.client.solrj.util.ClientUtils;
import org.apache.solr.cloud.MiniSolrCloudCluster;
import org.apache.solr.cloud.SolrCloudTestCase;
import org.apache.solr.common.params.MapSolrParams;
+import org.apache.solr.common.params.SolrParams;
import org.apache.solr.common.util.JavaBinCodec;
import org.apache.solr.common.util.NamedList;
import org.apache.solr.common.util.Utils;
import org.apache.solr.handler.loader.CborLoader;
-import org.apache.solr.response.XMLResponseWriter;
public class TestCborDataFormat extends SolrCloudTestCase {
@@ -109,12 +109,12 @@ public class TestCborDataFormat extends SolrCloudTestCase
{
}
}
- private void index(
- String testCollection, CloudSolrClient client, GenericSolrRequest r,
boolean del)
+ private void index(String testCollection, CloudSolrClient client,
SolrRequest<?> r, boolean del)
throws Exception {
- RTimer timer = new RTimer();
+ // RTimer timer = new RTimer();
client.request(r, testCollection);
- System.out.println("INDEX_TIME: " + r.contentWriter.getContentType() + " :
" + timer.getTime());
+ // System.out.println("INDEX_TIME: " + r.contentWriter.getContentType() +
" : " +
+ // timer.getTime());
if (del) {
UpdateRequest req = new UpdateRequest().deleteByQuery("*:*");
req.setParam("commit", "true");
@@ -145,12 +145,15 @@ public class TestCborDataFormat extends SolrCloudTestCase
{
private void modifySchema(String testCollection, CloudSolrClient client)
throws SolrServerException, IOException {
- GenericSolrRequest req =
- new GenericSolrRequest(SolrRequest.METHOD.POST, "/schema")
+ client.request(
+ new GenericSolrRequest(
+ SolrRequest.METHOD.POST,
+ "/schema",
+ SolrRequest.SolrRequestType.ADMIN,
+ SolrParams.of())
.setRequiresCollection(true)
- .setContentWriter(
- new RequestWriter.StringPayloadContentWriter(
- "{\n"
+ .withContent(
+ ("{\n"
+ "\"add-field-type\" : {"
+
"\"name\":\"knn_vector_10\",\"class\":\"solr.DenseVectorField\",\"vectorDimension\":10,\"similarityFunction\":\"cosine\",\"knnAlgorithm\":\"hnsw\"},\n"
+ "\"add-field\" : ["
@@ -158,38 +161,45 @@ public class TestCborDataFormat extends SolrCloudTestCase
{
+
"{\"name\":\"initial_release_date\",\"type\":\"string\",\"stored\":true},\n"
+
"{\"name\":\"directed_by\",\"type\":\"string\",\"multiValued\":true,\"stored\":true},\n"
+
"{\"name\":\"genre\",\"type\":\"string\",\"multiValued\":true,\"stored\":true},\n"
- +
"{\"name\":\"film_vector\",\"type\":\"knn_vector_10\",\"indexed\":true,\"stored\":true}]}",
- XMLResponseWriter.CONTENT_TYPE_XML_UTF8));
-
- client.request(req, testCollection);
+ +
"{\"name\":\"film_vector\",\"type\":\"knn_vector_10\",\"indexed\":true,\"stored\":true}]}")
+ .getBytes(StandardCharsets.UTF_8),
+ ClientUtils.TEXT_JSON),
+ testCollection);
}
- private GenericSolrRequest createJsonReq(byte[] b) {
+ private SolrRequest<?> createJsonReq(byte[] b) {
return new GenericSolrRequest(
SolrRequest.METHOD.POST,
"/update/json/docs",
+ SolrRequest.SolrRequestType.UPDATE,
new MapSolrParams(Map.of("commit", "true")))
.setRequiresCollection(true)
.withContent(b, "application/json");
}
@SuppressWarnings("rawtypes")
- private GenericSolrRequest createJavabinReq(byte[] b) throws IOException {
+ private SolrRequest<?> createJavabinReq(byte[] b) throws IOException {
List l = (List) Utils.fromJSON(b);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
new JavaBinCodec().marshal(l.iterator(), baos);
return new GenericSolrRequest(
- SolrRequest.METHOD.POST, "/update", new
MapSolrParams(Map.of("commit", "true")))
- .withContent(baos.toByteArray(), "application/javabin")
- .setRequiresCollection(true);
+ SolrRequest.METHOD.POST,
+ "/update",
+ SolrRequest.SolrRequestType.UPDATE,
+ new MapSolrParams(Map.of("commit", "true")))
+ .setRequiresCollection(true)
+ .withContent(baos.toByteArray(), "application/javabin");
}
- private GenericSolrRequest createCborReq(byte[] b) throws IOException {
+ private SolrRequest<?> createCborReq(byte[] b) throws IOException {
return new GenericSolrRequest(
- SolrRequest.METHOD.POST, "/update/cbor", new
MapSolrParams(Map.of("commit", "true")))
- .withContent(serializeToCbor(b), "application/cbor")
- .setRequiresCollection(true);
+ SolrRequest.METHOD.POST,
+ "/update/cbor",
+ SolrRequest.SolrRequestType.UPDATE,
+ new MapSolrParams(Map.of("commit", "true")))
+ .setRequiresCollection(true)
+ .withContent(serializeToCbor(b), "application/cbor");
}
@SuppressWarnings("unchecked")
diff --git
a/solr/prometheus-exporter/src/java/org/apache/solr/prometheus/scraper/SolrScraper.java
b/solr/prometheus-exporter/src/java/org/apache/solr/prometheus/scraper/SolrScraper.java
index 60e6cf87a18..e66b228c67d 100644
---
a/solr/prometheus-exporter/src/java/org/apache/solr/prometheus/scraper/SolrScraper.java
+++
b/solr/prometheus-exporter/src/java/org/apache/solr/prometheus/scraper/SolrScraper.java
@@ -37,6 +37,7 @@ import java.util.stream.Collectors;
import net.thisptr.jackson.jq.JsonQuery;
import net.thisptr.jackson.jq.exception.JsonQueryException;
import org.apache.solr.client.solrj.SolrClient;
+import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.SolrRequest.METHOD;
import org.apache.solr.client.solrj.SolrRequest.SolrRequestType;
import org.apache.solr.client.solrj.SolrServerException;
@@ -134,7 +135,7 @@ public abstract class SolrScraper implements Closeable {
zkHostLabelValue = ((CloudSolrClient)
client).getClusterStateProvider().getQuorumHosts();
}
- GenericSolrRequest request = null;
+ SolrRequest<?> request;
if (ADMIN_PATHS.contains(query.getPath())) {
request =
new GenericSolrRequest(
@@ -142,8 +143,8 @@ public abstract class SolrScraper implements Closeable {
} else {
request =
new GenericSolrRequest(
- METHOD.GET, query.getPath(), SolrRequestType.ADMIN,
query.getParameters());
- request.setRequiresCollection(true);
+ METHOD.GET, query.getPath(), SolrRequestType.UNSPECIFIED,
query.getParameters())
+ .setRequiresCollection(true);
}
NamedList<Object> response;
diff --git
a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientRetryTest.java
b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientRetryTest.java
index 61287300d2e..39f10b2c324 100644
---
a/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientRetryTest.java
+++
b/solr/solrj/src/test/org/apache/solr/client/solrj/impl/CloudHttp2SolrClientRetryTest.java
@@ -69,7 +69,6 @@ public class CloudHttp2SolrClientRetryTest extends
SolrCloudTestCase {
var metricsRequest =
new GenericSolrRequest(METHOD.GET, "/admin/metrics",
SolrRequestType.ADMIN, params);
- metricsRequest.setRequiresCollection(false);
NamedList<Object> namedList = solrClient.request(metricsRequest);
System.out.println(namedList);
diff --git
a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractBasicDistributedZkTestBase.java
b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractBasicDistributedZkTestBase.java
index 684a2765ce1..3587d949f22 100644
---
a/solr/test-framework/src/java/org/apache/solr/cloud/AbstractBasicDistributedZkTestBase.java
+++
b/solr/test-framework/src/java/org/apache/solr/cloud/AbstractBasicDistributedZkTestBase.java
@@ -41,7 +41,7 @@ import org.apache.lucene.util.IOUtils;
import org.apache.solr.JSONTestUtil;
import org.apache.solr.client.solrj.SolrClient;
import org.apache.solr.client.solrj.SolrQuery;
-import org.apache.solr.client.solrj.SolrRequest.METHOD;
+import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.SolrRequest.SolrRequestType;
import org.apache.solr.client.solrj.SolrServerException;
import org.apache.solr.client.solrj.impl.HttpSolrClient;
@@ -1288,7 +1288,9 @@ public abstract class AbstractBasicDistributedZkTestBase
extends AbstractFullDis
params.set("prefix", "UPDATE.updateHandler");
params.set("registry", "solr.core." + collection);
// use generic request to avoid extra processing of queries
- var req = new GenericSolrRequest(METHOD.GET, "/admin/metrics",
SolrRequestType.ADMIN, params);
+ var req =
+ new GenericSolrRequest(
+ SolrRequest.METHOD.GET, "/admin/metrics", SolrRequestType.ADMIN,
params);
NamedList<Object> resp = client.request(req);
NamedList<?> metrics = (NamedList<?>) resp.get("metrics");
NamedList<?> uhandlerCat = (NamedList<?>) metrics.getVal(0);
diff --git
a/solr/test-framework/src/java/org/apache/solr/handler/BackupStatusChecker.java
b/solr/test-framework/src/java/org/apache/solr/handler/BackupStatusChecker.java
index 77163549289..d752367ce39 100644
---
a/solr/test-framework/src/java/org/apache/solr/handler/BackupStatusChecker.java
+++
b/solr/test-framework/src/java/org/apache/solr/handler/BackupStatusChecker.java
@@ -25,6 +25,7 @@ import java.lang.invoke.MethodHandles;
import java.util.List;
import java.util.concurrent.TimeUnit;
import org.apache.solr.client.solrj.SolrClient;
+import org.apache.solr.client.solrj.SolrRequest;
import org.apache.solr.client.solrj.request.GenericSolrRequest;
import org.apache.solr.client.solrj.response.SimpleSolrResponse;
import org.apache.solr.common.util.NamedList;
@@ -190,7 +191,11 @@ public final class BackupStatusChecker {
private String _checkBackupSuccess(final String backupName) throws Exception
{
final String label = (null == backupName ? "latest backup" : backupName);
final SimpleSolrResponse rsp =
- new GenericSolrRequest(GenericSolrRequest.METHOD.GET, path,
params("command", "details"))
+ new GenericSolrRequest(
+ GenericSolrRequest.METHOD.GET,
+ path,
+ SolrRequest.SolrRequestType.ADMIN,
+ params("command", "details"))
.setRequiresCollection(true)
.process(client);
final NamedList<?> data = rsp.getResponse();
@@ -267,7 +272,11 @@ public final class BackupStatusChecker {
public boolean checkBackupDeletionSuccess(final String backupName) throws
Exception {
assertNotNull("backumpName must not be null", backupName);
final SimpleSolrResponse rsp =
- new GenericSolrRequest(GenericSolrRequest.METHOD.GET, path,
params("command", "details"))
+ new GenericSolrRequest(
+ GenericSolrRequest.METHOD.GET,
+ path,
+ SolrRequest.SolrRequestType.ADMIN,
+ params("command", "details"))
.setRequiresCollection(true)
.process(client);
final NamedList<?> data = rsp.getResponse();