You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by mi...@apache.org on 2016/03/24 16:21:17 UTC

lucene-solr:branch_6x: BKDWriter: also fix split to read ord after docID

Repository: lucene-solr
Updated Branches:
  refs/heads/branch_6x 2ca08aa6a -> 521ff41c8


BKDWriter: also fix split to read ord after docID


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

Branch: refs/heads/branch_6x
Commit: 521ff41c8491fd64aa1a2bfbd6e815c509ca1947
Parents: 2ca08aa
Author: Mike McCandless <mi...@apache.org>
Authored: Thu Mar 24 11:22:03 2016 -0400
Committer: Mike McCandless <mi...@apache.org>
Committed: Thu Mar 24 11:22:37 2016 -0400

----------------------------------------------------------------------
 .../lucene/util/bkd/OfflinePointReader.java     |  8 ++++---
 .../org/apache/lucene/util/bkd/TestBKD.java     | 22 +++++++++-----------
 2 files changed, 15 insertions(+), 15 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/521ff41c/lucene/core/src/java/org/apache/lucene/util/bkd/OfflinePointReader.java
----------------------------------------------------------------------
diff --git a/lucene/core/src/java/org/apache/lucene/util/bkd/OfflinePointReader.java b/lucene/core/src/java/org/apache/lucene/util/bkd/OfflinePointReader.java
index f3bf2bc..830e37b 100644
--- a/lucene/core/src/java/org/apache/lucene/util/bkd/OfflinePointReader.java
+++ b/lucene/core/src/java/org/apache/lucene/util/bkd/OfflinePointReader.java
@@ -171,11 +171,13 @@ final class OfflinePointReader extends PointReader {
     byte[] buffer = new byte[bytesPerDoc];
     while (count > 0) {
       in.readBytes(buffer, 0, buffer.length);
+
       long ord;
-      if (longOrds) {
-        ord = readLong(buffer, packedBytesLength);
+      if (singleValuePerDoc == false) {
+        ord = readInt(buffer, packedBytesLength+Integer.BYTES);
+      } else if (longOrds) {
+        ord = readLong(buffer, packedBytesLength+Integer.BYTES);
       } else {
-        // This is either ord (multi-valued case) or docID (which we use as ord in the single valued case):
         ord = readInt(buffer, packedBytesLength);
       }
 

http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/521ff41c/lucene/core/src/test/org/apache/lucene/util/bkd/TestBKD.java
----------------------------------------------------------------------
diff --git a/lucene/core/src/test/org/apache/lucene/util/bkd/TestBKD.java b/lucene/core/src/test/org/apache/lucene/util/bkd/TestBKD.java
index 1aaa689..18fbacf 100644
--- a/lucene/core/src/test/org/apache/lucene/util/bkd/TestBKD.java
+++ b/lucene/core/src/test/org/apache/lucene/util/bkd/TestBKD.java
@@ -864,22 +864,20 @@ public class TestBKD extends LuceneTestCase {
         }
       };
 
-      Throwable t;
-
-      if (TEST_ASSERTS_ENABLED) {
-        t = expectThrows(AssertionError.class, () -> {
-            verify(dir, docValues, null, numDims, numBytesPerDim, 50, 0.1);
-          });
-      } else {
-        t = expectThrows(ArrayIndexOutOfBoundsException.class, () -> {
-            verify(dir, docValues, null, numDims, numBytesPerDim, 50, 0.1);
-          });
-      }
+      Throwable t = expectThrows(CorruptIndexException.class, () -> {
+          verify(dir, docValues, null, numDims, numBytesPerDim, 50, 0.1);
+        });
       assertCorruptionDetected(t);
     }
   }
 
   private void assertCorruptionDetected(Throwable t) {
+    if (t instanceof CorruptIndexException) {
+      if (t.getMessage().contains("checksum failed (hardware problem?)")) {
+        return;
+      }
+    }
+
     for(Throwable suppressed : t.getSuppressed()) {
       if (suppressed instanceof CorruptIndexException) {
         if (suppressed.getMessage().contains("checksum failed (hardware problem?)")) {
@@ -887,7 +885,7 @@ public class TestBKD extends LuceneTestCase {
         }
       }
     }
-    fail("did not see a supporessed CorruptIndexException");
+    fail("did not see a suppressed CorruptIndexException");
   }
 
   public void testTieBreakOrder() throws Exception {