Thanks to Noble Paul, I think I now understand the Java replication handler's backup feature. It seems to work as expected on a toy index. When trying it out on a copy of my production index (300GB-ish), though, I'm getting FileNotFoundExceptions. These cancel the backup, and delete the snapshot.yyyymmdd* directory. It seems reproducible, in that every time I try to make a backup it will fail the same way.
This is Solr r815830. I'm not sure if this is something that would potentially be addressed by SOLR-1458? (That patch is from after r815830.) For now I'm not using any event-based backup triggers; instead I'm manually hitting http://master_host:port/solr/replication?command=backup This successfully sets off a snapshot, as seen in a thread dump. However, after a while the snapshot fails. I'll paste in a couple of stack traces below. I haven't seen any other evidence that my index is corrupt; in particular, searching the index and Java-based replication seem to be working fine. I'm currently checking the index with the Lucene CheckIndex tool to see if it detects any problems. I'll let you know if this turns up any corruption. Any suggestions about what to try next? Would you recommend trying with a build with SOLR-1458 applied? ******************** Sep 28, 2009 9:32:18 AM org.apache.solr.handler.SnapShooter createSnapshot SEVERE: Exception while creating snapshot java.io.FileNotFoundException: Source 'E:\tomcat\solrstuff\solr\filingcore\data\index\_y0w.fnm' does not exist at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:637) at org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:587) at org.apache.solr.handler.SnapShooter.createSnapshot(SnapShooter.java:83) at org.apache.solr.handler.SnapShooter$1.run(SnapShooter.java:61) Sep 28, 2009 10:39:43 AM org.apache.solr.handler.SnapShooter createSnapshot SEVERE: Exception while creating snapshot java.io.FileNotFoundException: Source 'E:\tomcat\solrstuff\solr\filingcore\data\index\segments_by' does not exist at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:637) at org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:587) at org.apache.solr.handler.SnapShooter.createSnapshot(SnapShooter.java:83) at org.apache.solr.handler.SnapShooter$1.run(SnapShooter.java:61) Sep 28, 2009 11:52:08 AM org.apache.solr.handler.SnapShooter createSnapshot SEVERE: Exception while creating snapshot java.io.FileNotFoundException: Source 'E:\tomcat\solrstuff\solr\filingcore\data\index\_yby.nrm' does not exist at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:637) at org.apache.commons.io.FileUtils.copyFileToDirectory(FileUtils.java:587) at org.apache.solr.handler.SnapShooter.createSnapshot(SnapShooter.java:83) at org.apache.solr.handler.SnapShooter$1.run(SnapShooter.java:61)