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 2012/10/29 17:10:40 UTC

svn commit: r1403396 - in /lucene/dev/trunk/solr: CHANGES.txt core/src/java/org/apache/solr/core/CoreContainer.java

Author: markrmiller
Date: Mon Oct 29 16:10:39 2012
New Revision: 1403396

URL: http://svn.apache.org/viewvc?rev=1403396&view=rev
Log:
SOLR-4005: If CoreContainer fails to register a created core, it should close it.

Modified:
    lucene/dev/trunk/solr/CHANGES.txt
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/CoreContainer.java

Modified: lucene/dev/trunk/solr/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/CHANGES.txt?rev=1403396&r1=1403395&r2=1403396&view=diff
==============================================================================
--- lucene/dev/trunk/solr/CHANGES.txt (original)
+++ lucene/dev/trunk/solr/CHANGES.txt Mon Oct 29 16:10:39 2012
@@ -129,6 +129,10 @@ Bug Fixes
   Directory outstanding, we need to wait for them to be released before closing.
   (Mark Miller)
 
+* SOLR-4005: If CoreContainer fails to register a created core, it should close it.
+  (Mark Miller)
+
+
 Other Changes
 ----------------------
 

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/CoreContainer.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/CoreContainer.java?rev=1403396&r1=1403395&r2=1403396&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/CoreContainer.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/CoreContainer.java Mon Oct 29 16:10:39 2012
@@ -482,6 +482,7 @@ public class CoreContainer 
 
     for (int i=0; i<nodes.getLength(); i++) {
       Node node = nodes.item(i);
+      SolrCore core = null;
       try {
         String rawName = DOMUtil.getAttr(node, CORE_NAME, null);
         if (null == rawName) {
@@ -526,7 +527,7 @@ public class CoreContainer 
 
         p.setCoreProperties(readProperties(cfg, node));
 
-        SolrCore core = create(p);
+        core  = create(p);
         register(name, core, false);
         
         // track original names
@@ -534,6 +535,9 @@ public class CoreContainer 
       }
       catch (Throwable ex) {
         SolrException.log(log,null,ex);
+        if (core != null) {
+          core.close();
+        }
       }
     }
   }