You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2016/08/25 12:25:21 UTC

[2/2] lucene-solr:branch_6x: LUCENE-7422: fix bugs in test's retry loop

LUCENE-7422: fix bugs in test's retry loop


Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/e3b08517
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/e3b08517
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/e3b08517

Branch: refs/heads/branch_6x
Commit: e3b08517c56307e75fc2d74c10efd52cd353feef
Parents: 2fcccc0
Author: Robert Muir <rm...@apache.org>
Authored: Thu Aug 25 08:20:53 2016 -0400
Committer: Robert Muir <rm...@apache.org>
Committed: Thu Aug 25 08:22:26 2016 -0400

----------------------------------------------------------------------
 .../org/apache/lucene/index/TestAllFilesCheckIndexHeader.java | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/e3b08517/lucene/core/src/test/org/apache/lucene/index/TestAllFilesCheckIndexHeader.java
----------------------------------------------------------------------
diff --git a/lucene/core/src/test/org/apache/lucene/index/TestAllFilesCheckIndexHeader.java b/lucene/core/src/test/org/apache/lucene/index/TestAllFilesCheckIndexHeader.java
index dfb2f1b..b4c6368 100644
--- a/lucene/core/src/test/org/apache/lucene/index/TestAllFilesCheckIndexHeader.java
+++ b/lucene/core/src/test/org/apache/lucene/index/TestAllFilesCheckIndexHeader.java
@@ -28,6 +28,8 @@ import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.IOContext;
 import org.apache.lucene.store.IndexInput;
 import org.apache.lucene.store.IndexOutput;
+import org.apache.lucene.store.MockDirectoryWrapper;
+import org.apache.lucene.store.RAMDirectory;
 import org.apache.lucene.util.LineFileDocs;
 import org.apache.lucene.util.LuceneTestCase.SuppressFileSystems;
 import org.apache.lucene.util.LuceneTestCase;
@@ -84,7 +86,8 @@ public class TestAllFilesCheckIndexHeader extends LuceneTestCase {
   }
   
   private void checkOneFile(Directory dir, String victim) throws IOException {
-    try (BaseDirectoryWrapper dirCopy = newDirectory()) {
+    // use ramdir explicit, as we do evil things like try to generate broken files, deletes must work.
+    try (BaseDirectoryWrapper dirCopy = new MockDirectoryWrapper(random(), new RAMDirectory())) {
       dirCopy.setCheckIndexOnClose(false);
 
       long victimLength = dir.fileLength(victim);
@@ -117,6 +120,8 @@ public class TestAllFilesCheckIndexHeader extends LuceneTestCase {
                 break;
               }
             }
+            // we have to try again, delete the first attempt and retry the loop
+            dirCopy.deleteFile(name);
           }
         }
         dirCopy.sync(Collections.singleton(name));