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/06/11 21:10:35 UTC

svn commit: r1348970 - /lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/SolrCore.java

Author: markrmiller
Date: Mon Jun 11 19:10:35 2012
New Revision: 1348970

URL: http://svn.apache.org/viewvc?rev=1348970&view=rev
Log:
test this change with jenkins runs - try and get index path from latest searcher rather than registered searcher

Modified:
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/SolrCore.java

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/SolrCore.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/SolrCore.java?rev=1348970&r1=1348969&r2=1348970&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/SolrCore.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/core/SolrCore.java Mon Jun 11 19:10:35 2012
@@ -161,10 +161,21 @@ public final class SolrCore implements S
 
   public String getIndexDir() {
     synchronized (searcherLock) {
-      if (_searcher == null)
-        return dataDir + "index/";
-      SolrIndexSearcher searcher = _searcher.get();
-      return searcher.getIndexDir() == null ? dataDir + "index/" : searcher.getIndexDir();
+      RefCounted<SolrIndexSearcher> searcherRef = getNewestSearcher(false);
+      String indexDir;
+      try {
+        if (searcherRef == null) {
+          return dataDir + "index/";
+        }
+        SolrIndexSearcher searcher = searcherRef.get();
+        indexDir = searcher.getIndexDir() == null ? dataDir + "index/"
+            : searcher.getIndexDir();
+      } finally {
+        if (searcherRef != null) {
+          searcherRef.decref();
+        }
+      }
+      return indexDir;
     }
   }