SOLR-7358: TestRestoreCore fails in Windows

git-svn-id: https://svn.apache.org/repos/asf/lucene/dev/trunk@1671858 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Varun Thacker 2015-04-07 14:38:52 +00:00
parent 5aa3cbfb2d
commit fe0ab10d4e
3 changed files with 8 additions and 3 deletions

View File

@ -104,6 +104,8 @@ Other Changes
* SOLR-6865: Upgrade HttpClient to 4.4.1 (Shawn Heisey) * SOLR-6865: Upgrade HttpClient to 4.4.1 (Shawn Heisey)
* SOLR-7358: TestRestoreCore fails in Windows (Ishan Chattopadhyaya via Varun Thacker)
================== 5.1.0 ================== ================== 5.1.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release

View File

@ -105,7 +105,7 @@ public class RestoreCore implements Callable<Boolean> {
log.info("Successfully restored to the backup index"); log.info("Successfully restored to the backup index");
} catch (Exception e) { } catch (Exception e) {
//Rollback to the old index directory. Delete the restore index directory and mark the restore as failed. //Rollback to the old index directory. Delete the restore index directory and mark the restore as failed.
log.info("Could not switch to restored index. Rolling back to the current index"); log.warn("Could not switch to restored index. Rolling back to the current index");
Directory dir = null; Directory dir = null;
try { try {
dir = core.getDirectoryFactory().get(core.getDataDir(), DirectoryFactory.DirContext.META_DATA, dir = core.getDirectoryFactory().get(core.getDataDir(), DirectoryFactory.DirContext.META_DATA,

View File

@ -23,6 +23,7 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.net.URL; import java.net.URL;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.nio.file.DirectoryStream;
import java.nio.file.Files; import java.nio.file.Files;
import java.nio.file.Path; import java.nio.file.Path;
import java.nio.file.Paths; import java.nio.file.Paths;
@ -186,8 +187,10 @@ public class TestRestoreCore extends SolrJettyTestBase {
//Remove the segments_n file so that the backup index is corrupted. //Remove the segments_n file so that the backup index is corrupted.
//Restore should fail and it should automatically rollback to the original index. //Restore should fail and it should automatically rollback to the original index.
Path restoreIndexPath = Paths.get(location, "snapshot." + snapshotName); Path restoreIndexPath = Paths.get(location, "snapshot." + snapshotName);
Path segmentFileName = Files.newDirectoryStream(restoreIndexPath, IndexFileNames.SEGMENTS + "*").iterator().next(); try (DirectoryStream<Path> stream = Files.newDirectoryStream(restoreIndexPath, IndexFileNames.SEGMENTS + "*")) {
Files.delete(segmentFileName); Path segmentFileName = stream.iterator().next();
Files.delete(segmentFileName);
}
TestReplicationHandlerBackup.runBackupCommand(masterJetty, ReplicationHandler.CMD_RESTORE, params); TestReplicationHandlerBackup.runBackupCommand(masterJetty, ReplicationHandler.CMD_RESTORE, params);