You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ma...@apache.org on 2020/09/02 14:17:54 UTC

[lucene-solr] branch reference_impl_dev updated: @705 Handle rare case.

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

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


The following commit(s) were added to refs/heads/reference_impl_dev by this push:
     new 828ee79  @705 Handle rare case.
828ee79 is described below

commit 828ee79a73719794c198669b963243e7b591027a
Author: markrmiller@gmail.com <ma...@gmail.com>
AuthorDate: Wed Sep 2 09:17:34 2020 -0500

    @705 Handle rare case.
---
 solr/core/src/java/org/apache/solr/update/UpdateHandler.java | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/solr/core/src/java/org/apache/solr/update/UpdateHandler.java b/solr/core/src/java/org/apache/solr/update/UpdateHandler.java
index 59a99bc..95dc7e4 100644
--- a/solr/core/src/java/org/apache/solr/update/UpdateHandler.java
+++ b/solr/core/src/java/org/apache/solr/update/UpdateHandler.java
@@ -16,9 +16,11 @@
  */
 package org.apache.solr.update;
 
+import org.apache.solr.common.AlreadyClosedException;
 import org.apache.solr.common.SolrException;
 import org.apache.solr.common.util.IOUtils;
 import org.apache.solr.common.util.ObjectReleaseTracker;
+import org.apache.solr.core.CoreDescriptor;
 import org.apache.solr.core.DirectoryFactory;
 import org.apache.solr.core.HdfsDirectoryFactory;
 import org.apache.solr.core.PluginInfo;
@@ -129,13 +131,17 @@ UpdateHandler implements SolrInfoBean, Closeable {
     ObjectReleaseTracker.track(this);
     try {
       this.core = core;
+      CoreDescriptor cd = core.getCoreDescriptor();
+      if (cd == null) {
+        throw new AlreadyClosedException();
+      }
       idField = core.getLatestSchema().getUniqueKeyField();
       idFieldType = idField != null ? idField.getType() : null;
       parseEventListeners();
       PluginInfo ulogPluginInfo = core.getSolrConfig().getPluginInfo(UpdateLog.class.getName());
 
       // If this is a replica of type PULL, don't create the update log
-      boolean skipUpdateLog = core.getCoreDescriptor().getCloudDescriptor() != null && !core.getCoreDescriptor().getCloudDescriptor().requiresTransactionLog();
+      boolean skipUpdateLog = cd.getCloudDescriptor() != null && !cd.getCloudDescriptor().requiresTransactionLog();
       if (updateLog == null && ulogPluginInfo != null && ulogPluginInfo.isEnabled() && !skipUpdateLog) {
         DirectoryFactory dirFactory = core.getDirectoryFactory();
         if (dirFactory instanceof HdfsDirectoryFactory) {