You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by sh...@apache.org on 2009/02/04 11:32:38 UTC

svn commit: r740678 - in /lucene/solr/trunk: CHANGES.txt src/java/org/apache/solr/handler/ReplicationHandler.java

Author: shalin
Date: Wed Feb  4 10:32:37 2009
New Revision: 740678

URL: http://svn.apache.org/viewvc?rev=740678&view=rev
Log:
SOLR-820 -- Support replication on startup of master with new index

Modified:
    lucene/solr/trunk/CHANGES.txt
    lucene/solr/trunk/src/java/org/apache/solr/handler/ReplicationHandler.java

Modified: lucene/solr/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/CHANGES.txt?rev=740678&r1=740677&r2=740678&view=diff
==============================================================================
--- lucene/solr/trunk/CHANGES.txt (original)
+++ lucene/solr/trunk/CHANGES.txt Wed Feb  4 10:32:37 2009
@@ -145,6 +145,8 @@
 
 32. SOLR-966: Enhance the map() function query to take in an optional default value (Noble Paul, shalin)
 
+33. SOLR-820: Support replication on startup of master with new index. (Noble Paul, Akshay Ukey via shalin)
+
 
 Optimizations
 ----------------------

Modified: lucene/solr/trunk/src/java/org/apache/solr/handler/ReplicationHandler.java
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/java/org/apache/solr/handler/ReplicationHandler.java?rev=740678&r1=740677&r2=740678&view=diff
==============================================================================
--- lucene/solr/trunk/src/java/org/apache/solr/handler/ReplicationHandler.java (original)
+++ lucene/solr/trunk/src/java/org/apache/solr/handler/ReplicationHandler.java Wed Feb  4 10:32:37 2009
@@ -31,6 +31,7 @@
 import org.apache.solr.request.SolrQueryRequest;
 import org.apache.solr.request.SolrQueryResponse;
 import org.apache.solr.search.SolrIndexSearcher;
+import org.apache.solr.update.DirectUpdateHandler2;
 import org.apache.solr.util.RefCounted;
 import org.apache.solr.util.plugin.SolrCoreAware;
 import org.slf4j.Logger;
@@ -684,6 +685,12 @@
       if (replicateAfter.contains("startup")) {
         RefCounted<SolrIndexSearcher> s = core.getNewestSearcher(false);
         try {
+          if (core.getUpdateHandler() instanceof DirectUpdateHandler2) {
+            ((DirectUpdateHandler2) core.getUpdateHandler()).forceOpenWriter();
+          } else {
+            LOG.warn("The update handler being used is not an instance or sub-class of DirectUpdateHandler2. " +
+                    "Replicate on Startup cannot work.");
+          }
           indexCommitPoint = s.get().getReader().getIndexCommit();
         } catch (IOException e) {
           LOG.warn("Unable to get IndexCommit on startup", e);