You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by va...@apache.org on 2015/04/05 16:59:03 UTC
svn commit: r1671400 - in /lucene/dev/trunk/solr/core/src:
java/org/apache/solr/handler/RestoreCore.java
java/org/apache/solr/handler/SnapShooter.java
test/org/apache/solr/handler/TestRestoreCore.java
Author: varun
Date: Sun Apr 5 14:59:02 2015
New Revision: 1671400
URL: http://svn.apache.org/r1671400
Log:
SOLR-6637: Better error handling when retrieving checksums (Fixes Policeman Jenkins Failure #2134)
Modified:
lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/RestoreCore.java
lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/SnapShooter.java
lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/RestoreCore.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/RestoreCore.java?rev=1671400&r1=1671399&r2=1671400&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/RestoreCore.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/RestoreCore.java Sun Apr 5 14:59:02 2015
@@ -17,6 +17,7 @@ package org.apache.solr.handler;
* limitations under the License.
*/
+import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.concurrent.Callable;
@@ -72,9 +73,14 @@ public class RestoreCore implements Call
//Move all files from backupDir to restoreIndexDir
for (String filename : backupDir.listAll()) {
checkInterrupted();
- log.info("Copying over file to restore directory " + filename);
+ log.info("Copying file {} to restore directory ", filename);
try (IndexInput indexInput = backupDir.openInput(filename, IOContext.READONCE)) {
- long checksum = CodecUtil.retrieveChecksum(indexInput);
+ Long checksum = null;
+ try {
+ checksum = CodecUtil.retrieveChecksum(indexInput);
+ } catch (Exception e) {
+ log.warn("Could not read checksum from index file: " + filename, e);
+ }
long length = indexInput.length();
IndexFetcher.CompareResult compareResult = IndexFetcher.compareFile(indexDir, filename, length, checksum);
if (!compareResult.equal || (!compareResult.checkSummed && (filename.endsWith(".si")
Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/SnapShooter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/SnapShooter.java?rev=1671400&r1=1671399&r2=1671400&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/SnapShooter.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/SnapShooter.java Sun Apr 5 14:59:02 2015
@@ -127,7 +127,7 @@ public class SnapShooter {
}
void createSnapshot(final IndexCommit indexCommit, ReplicationHandler replicationHandler) {
- LOG.info("Creating backup snapshot " + (snapshotName == null ? "<not named>" : snapshotName));
+ LOG.info("Creating backup snapshot " + (snapshotName == null ? "<not named>" : snapshotName) + " at " + snapDir);
NamedList<Object> details = new NamedList<>();
details.add("startTime", new Date().toString());
try {
@@ -144,7 +144,8 @@ public class SnapShooter {
details.add("status", "success");
details.add("snapshotCompletedAt", new Date().toString());
details.add("snapshotName", snapshotName);
- LOG.info("Done creating backup snapshot: " + (snapshotName == null ? "<not named>" : snapshotName));
+ LOG.info("Done creating backup snapshot: " + (snapshotName == null ? "<not named>" : snapshotName) +
+ " at " + snapDir);
} catch (Exception e) {
IndexFetcher.delTree(snapShotDir);
LOG.error("Exception while creating snapshot", e);
Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java?rev=1671400&r1=1671399&r2=1671400&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/handler/TestRestoreCore.java Sun Apr 5 14:59:02 2015
@@ -26,6 +26,7 @@ import java.net.URLEncoder;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
+import java.util.regex.Matcher;
import java.util.regex.Pattern;
import org.apache.commons.io.IOUtils;
@@ -226,8 +227,9 @@ public class TestRestoreCore extends Sol
URL url = new URL(masterUrl);
stream = url.openStream();
String response = IOUtils.toString(stream, "UTF-8");
- if(pException.matcher(response).find()) {
- fail("Failed to complete restore action");
+ Matcher matcher = pException.matcher(response);
+ if(matcher.find()) {
+ fail("Failed to complete restore action with exception " + matcher.group(1));
}
if(response.contains("<str name=\"status\">success</str>")) {
return true;