You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@solr.apache.org by ep...@apache.org on 2024/02/23 19:27:36 UTC
(solr) 01/02: SOLR-17017: Reset the collection as part of running the example when starting Solr... (#2261)
This is an automated email from the ASF dual-hosted git repository.
epugh pushed a commit to branch branch_9x
in repository https://gitbox.apache.org/repos/asf/solr.git
commit a6d94f21340a5625e0ab2ea48aac676d075d905b
Author: Eric Pugh <ep...@opensourceconnections.com>
AuthorDate: Fri Feb 23 13:55:20 2024 -0500
SOLR-17017: Reset the collection as part of running the example when starting Solr... (#2261)
Provide some messaging about running an example via bin/solr start -e MYEXAMPLE and the example already exists warning the user that the state isnt' fresh!
---
.../java/org/apache/solr/cli/RunExampleTool.java | 25 +++++++++++++++-------
1 file changed, 17 insertions(+), 8 deletions(-)
diff --git a/solr/core/src/java/org/apache/solr/cli/RunExampleTool.java b/solr/core/src/java/org/apache/solr/cli/RunExampleTool.java
index 680a879372e..f6e81b57af5 100644
--- a/solr/core/src/java/org/apache/solr/cli/RunExampleTool.java
+++ b/solr/core/src/java/org/apache/solr/cli/RunExampleTool.java
@@ -259,15 +259,18 @@ public class RunExampleTool extends ToolBase {
String solrUrl = (String) nodeStatus.get("baseUrl");
- // safe check if core / collection already exists
+ // If the example already exists then let the user know they should delete it or
+ // they may get unusual behaviors.
boolean alreadyExists = false;
- if (nodeStatus.get("cloud") != null) {
- if (SolrCLI.safeCheckCollectionExists(solrUrl, collectionName)) {
+ boolean cloudMode = nodeStatus.get("cloud") != null;
+ if (cloudMode) {
+ if (SolrCLI.safeCheckCollectionExists(
+ solrUrl, collectionName))) {
alreadyExists = true;
echo(
"\nWARNING: Collection '"
+ collectionName
- + "' already exists!\nChecked collection existence using Collections API");
+ + "' already exists, which may make starting this example not work well!");
}
} else {
String coreName = collectionName;
@@ -276,10 +279,17 @@ public class RunExampleTool extends ToolBase {
echo(
"\nWARNING: Core '"
+ coreName
- + "' already exists!\nChecked core existence using Core API command");
+ + "' already exists, which may make starting this example not work well!");
}
}
+ if (alreadyExists) {
+ echo(
+ "You may want to run 'bin/solr delete -c "
+ + collectionName
+ + "' first before running the example to ensure a fresh state.");
+ }
+
if (!alreadyExists) {
String[] createArgs =
new String[] {
@@ -335,7 +345,7 @@ public class RunExampleTool extends ToolBase {
}
} else if ("films".equals(exampleName) && !alreadyExists) {
try (SolrClient solrClient = new Http2SolrClient.Builder(solrUrl).build()) {
- echo("Adding dense vector field type to films schema \"_default\"");
+ echo("Adding dense vector field type to films schema");
SolrCLI.postJsonToSolr(
solrClient,
"/" + collectionName + "/schema",
@@ -349,8 +359,7 @@ public class RunExampleTool extends ToolBase {
+ " }\n"
+ " }");
- echo(
- "Adding name, initial_release_date, and film_vector fields to films schema \"_default\"");
+ echo("Adding name, initial_release_date, and film_vector fields to films schema");
SolrCLI.postJsonToSolr(
solrClient,
"/" + collectionName + "/schema",