You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2020/08/17 00:56:04 UTC

[lucene-solr] 02/02: SOLR-14750: Invoke core reload with core id to avoid multiple reloads

This is an automated email from the ASF dual-hosted git repository.

noble pushed a commit to branch jira/solr14750
in repository https://gitbox.apache.org/repos/asf/lucene-solr.git

commit 3e79a0513d731f22e851a06d9970772b77512960
Author: noblepaul <no...@gmail.com>
AuthorDate: Mon Aug 17 10:55:10 2020 +1000

    SOLR-14750: Invoke core reload with core id to avoid multiple reloads
---
 solr/core/src/java/org/apache/solr/core/CoreContainer.java        | 7 -------
 solr/core/src/java/org/apache/solr/core/SolrCore.java             | 2 +-
 solr/core/src/java/org/apache/solr/handler/SolrConfigHandler.java | 2 +-
 solr/core/src/java/org/apache/solr/schema/SchemaManager.java      | 4 ++--
 4 files changed, 4 insertions(+), 11 deletions(-)

diff --git a/solr/core/src/java/org/apache/solr/core/CoreContainer.java b/solr/core/src/java/org/apache/solr/core/CoreContainer.java
index ac9342f..b5cd2d7 100644
--- a/solr/core/src/java/org/apache/solr/core/CoreContainer.java
+++ b/solr/core/src/java/org/apache/solr/core/CoreContainer.java
@@ -1570,13 +1570,6 @@ public class CoreContainer {
     return ret;
   }
 
-  /**Reload the core asynchronously
-   */
-  public void reloadAsync(SolrCore core) {
-    final String name = core.getName();
-    final UUID coreId = core.uniqueId;
-    runAsync(() -> reload(name, coreId));
-  }
   /**
    * reloads a core
    * refer {@link CoreContainer#reload(String, UUID)} for details
diff --git a/solr/core/src/java/org/apache/solr/core/SolrCore.java b/solr/core/src/java/org/apache/solr/core/SolrCore.java
index 13f791d..6e5fda2 100644
--- a/solr/core/src/java/org/apache/solr/core/SolrCore.java
+++ b/solr/core/src/java/org/apache/solr/core/SolrCore.java
@@ -3101,7 +3101,7 @@ public final class SolrCore implements SolrInfoBean, Closeable {
         if (configHandler.getReloadLock().tryLock()) {
 
           try {
-            core.getCoreContainer().reloadAsync(core);
+            core.getCoreContainer().reload(core.getName(), core.uniqueId);
           } catch (SolrCoreState.CoreIsClosedException e) {
             /*no problem this core is already closed*/
           } finally {
diff --git a/solr/core/src/java/org/apache/solr/handler/SolrConfigHandler.java b/solr/core/src/java/org/apache/solr/handler/SolrConfigHandler.java
index 05acdc0..111cbcd 100644
--- a/solr/core/src/java/org/apache/solr/handler/SolrConfigHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/SolrConfigHandler.java
@@ -538,7 +538,7 @@ public class SolrConfigHandler extends RequestHandlerBase implements SolrCoreAwa
             latestVersion, 30);
       } else {
         SolrResourceLoader.persistConfLocally(loader, ConfigOverlay.RESOURCE_NAME, overlay.toByteArray());
-        req.getCore().getCoreContainer().reloadAsync(req.getCore());
+        req.getCore().getCoreContainer().reload(req.getCore().getName(), req.getCore().uniqueId);
         log.info("Executed config commands successfully and persisted to File System {}", ops);
       }
 
diff --git a/solr/core/src/java/org/apache/solr/schema/SchemaManager.java b/solr/core/src/java/org/apache/solr/schema/SchemaManager.java
index cab0664..7185021 100644
--- a/solr/core/src/java/org/apache/solr/schema/SchemaManager.java
+++ b/solr/core/src/java/org/apache/solr/schema/SchemaManager.java
@@ -129,7 +129,7 @@ public class SchemaManager {
             latestVersion = ZkController.persistConfigResourceToZooKeeper
                 (zkLoader, managedIndexSchema.getSchemaZkVersion(), managedIndexSchema.getResourceName(),
                  sw.toString().getBytes(StandardCharsets.UTF_8), true);
-            req.getCore().getCoreContainer().reloadAsync(req.getCore());
+            req.getCore().getCoreContainer().reload(req.getCore().getName(), req.getCore().uniqueId);
             break;
           } catch (ZkController.ResourceModifiedInZkException e) {
             log.info("Schema was modified by another node. Retrying..");
@@ -139,7 +139,7 @@ public class SchemaManager {
             //only for non cloud stuff
             managedIndexSchema.persistManagedSchema(false);
             core.setLatestSchema(managedIndexSchema);
-            core.getCoreContainer().reloadAsync(core);
+            core.getCoreContainer().reload(core.getName(), core.uniqueId);
           } catch (SolrException e) {
             log.warn(errorMsg);
             errors = singletonList(errorMsg + e.getMessage());