You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by jp...@apache.org on 2014/06/05 14:38:38 UTC
svn commit: r1600637 - in /lucene/dev/branches/branch_4x: ./ lucene/
lucene/core/ lucene/core/src/java/org/apache/lucene/search/
lucene/core/src/java/org/apache/lucene/util/packed/
lucene/core/src/test/org/apache/lucene/util/packed/
Author: jpountz
Date: Thu Jun 5 12:38:37 2014
New Revision: 1600637
URL: http://svn.apache.org/r1600637
Log:
LUCENE-5733: Remove PackedInts.Reader.(has|get)Array and move getBitsPerValue to PackedInts.Mutable.
Modified:
lucene/dev/branches/branch_4x/ (props changed)
lucene/dev/branches/branch_4x/lucene/ (props changed)
lucene/dev/branches/branch_4x/lucene/core/ (props changed)
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct16.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct32.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct64.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct8.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPacked64SingleBlockReader.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPackedReader.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/GrowableWriter.java
lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/PackedInts.java
lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/util/packed/TestPackedInts.java
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/search/FieldCacheImpl.java Thu Jun 5 12:38:37 2014
@@ -576,7 +576,6 @@ class FieldCacheImpl implements FieldCac
private final int minValue;
public IntsFromArray(PackedInts.Reader values, int minValue) {
- assert values.getBitsPerValue() <= 32;
this.values = values;
this.minValue = minValue;
}
@@ -684,6 +683,7 @@ class FieldCacheImpl implements FieldCac
if (values == null) {
return new IntsFromArray(new PackedInts.NullReader(reader.maxDoc()), 0);
}
+ assert values.writer.getBitsPerValue() <= 32;
return new IntsFromArray(values.writer.getMutable(), (int) values.minValue);
}
}
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct16.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct16.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct16.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct16.java Thu Jun 5 12:38:37 2014
@@ -74,16 +74,6 @@ final class Direct16 extends PackedInts.
}
@Override
- public Object getArray() {
- return values;
- }
-
- @Override
- public boolean hasArray() {
- return true;
- }
-
- @Override
public int get(int index, long[] arr, int off, int len) {
assert len > 0 : "len must be > 0 (got " + len + ")";
assert index >= 0 && index < valueCount;
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct32.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct32.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct32.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct32.java Thu Jun 5 12:38:37 2014
@@ -74,16 +74,6 @@ final class Direct32 extends PackedInts.
}
@Override
- public Object getArray() {
- return values;
- }
-
- @Override
- public boolean hasArray() {
- return true;
- }
-
- @Override
public int get(int index, long[] arr, int off, int len) {
assert len > 0 : "len must be > 0 (got " + len + ")";
assert index >= 0 && index < valueCount;
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct64.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct64.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct64.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct64.java Thu Jun 5 12:38:37 2014
@@ -69,16 +69,6 @@ final class Direct64 extends PackedInts.
}
@Override
- public Object getArray() {
- return values;
- }
-
- @Override
- public boolean hasArray() {
- return true;
- }
-
- @Override
public int get(int index, long[] arr, int off, int len) {
assert len > 0 : "len must be > 0 (got " + len + ")";
assert index >= 0 && index < valueCount;
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct8.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct8.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct8.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/Direct8.java Thu Jun 5 12:38:37 2014
@@ -72,16 +72,6 @@ final class Direct8 extends PackedInts.M
}
@Override
- public Object getArray() {
- return values;
- }
-
- @Override
- public boolean hasArray() {
- return true;
- }
-
- @Override
public int get(int index, long[] arr, int off, int len) {
assert len > 0 : "len must be > 0 (got " + len + ")";
assert index >= 0 && index < valueCount;
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPacked64SingleBlockReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPacked64SingleBlockReader.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPacked64SingleBlockReader.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPacked64SingleBlockReader.java Thu Jun 5 12:38:37 2014
@@ -24,14 +24,16 @@ import org.apache.lucene.store.IndexInpu
final class DirectPacked64SingleBlockReader extends PackedInts.ReaderImpl {
private final IndexInput in;
+ private final int bitsPerValue;
private final long startPointer;
private final int valuesPerBlock;
private final long mask;
DirectPacked64SingleBlockReader(int bitsPerValue, int valueCount,
IndexInput in) {
- super(valueCount, bitsPerValue);
+ super(valueCount);
this.in = in;
+ this.bitsPerValue = bitsPerValue;
startPointer = in.getFilePointer();
valuesPerBlock = 64 / bitsPerValue;
mask = ~(~0L << bitsPerValue);
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPackedReader.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPackedReader.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPackedReader.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/DirectPackedReader.java Thu Jun 5 12:38:37 2014
@@ -25,12 +25,14 @@ import java.io.IOException;
// just for back compat, use DirectReader/DirectWriter for more efficient impl
class DirectPackedReader extends PackedInts.ReaderImpl {
final IndexInput in;
+ final int bitsPerValue;
final long startPointer;
final long valueMask;
DirectPackedReader(int bitsPerValue, int valueCount, IndexInput in) {
- super(valueCount, bitsPerValue);
+ super(valueCount);
this.in = in;
+ this.bitsPerValue = bitsPerValue;
startPointer = in.getFilePointer();
if (bitsPerValue == 64) {
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/GrowableWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/GrowableWriter.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/GrowableWriter.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/GrowableWriter.java Thu Jun 5 12:38:37 2014
@@ -70,16 +70,6 @@ public class GrowableWriter extends Pack
return current;
}
- @Override
- public Object getArray() {
- return current.getArray();
- }
-
- @Override
- public boolean hasArray() {
- return current.hasArray();
- }
-
private void ensureCapacity(long value) {
if ((value & currentMask) == value) {
return;
Modified: lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/PackedInts.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/PackedInts.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/PackedInts.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/java/org/apache/lucene/util/packed/PackedInts.java Thu Jun 5 12:38:37 2014
@@ -473,42 +473,10 @@ public class PackedInts {
}
/**
- * @return the number of bits used to store any given value.
- * Note: This does not imply that memory usage is
- * {@code bitsPerValue * #values} as implementations are free to
- * use non-space-optimal packing of bits.
- */
- public abstract int getBitsPerValue();
-
- /**
* @return the number of values.
*/
public abstract int size();
- /**
- * Expert: if the bit-width of this reader matches one of
- * java's native types, returns the underlying array
- * (ie, byte[], short[], int[], long[]); else, returns
- * null. Note that when accessing the array you must
- * upgrade the type (bitwise AND with all ones), to
- * interpret the full value as unsigned. Ie,
- * bytes[idx]&0xFF, shorts[idx]&0xFFFF, etc.
- */
- public Object getArray() {
- assert !hasArray();
- return null;
- }
-
- /**
- * Returns true if this implementation is backed by a
- * native java array.
- *
- * @see #getArray
- */
- public boolean hasArray() {
- return false;
- }
-
}
/**
@@ -568,6 +536,14 @@ public class PackedInts {
public static abstract class Mutable extends Reader {
/**
+ * @return the number of bits used to store any given value.
+ * Note: This does not imply that memory usage is
+ * {@code bitsPerValue * #values} as implementations are free to
+ * use non-space-optimal packing of bits.
+ */
+ public abstract int getBitsPerValue();
+
+ /**
* Set the value at the given index in the array.
* @param index where the value should be positioned.
* @param value a value conforming to the constraints set by the array.
@@ -637,12 +613,9 @@ public class PackedInts {
* @lucene.internal
*/
static abstract class ReaderImpl extends Reader {
- protected final int bitsPerValue;
protected final int valueCount;
- protected ReaderImpl(int valueCount, int bitsPerValue) {
- this.bitsPerValue = bitsPerValue;
- assert bitsPerValue > 0 && bitsPerValue <= 64 : "bitsPerValue=" + bitsPerValue;
+ protected ReaderImpl(int valueCount) {
this.valueCount = valueCount;
}
@@ -650,11 +623,6 @@ public class PackedInts {
public abstract long get(int index);
@Override
- public final int getBitsPerValue() {
- return bitsPerValue;
- }
-
- @Override
public final int size() {
return valueCount;
}
@@ -709,11 +677,6 @@ public class PackedInts {
}
@Override
- public int getBitsPerValue() {
- return 0;
- }
-
- @Override
public int size() {
return valueCount;
}
Modified: lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/util/packed/TestPackedInts.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/util/packed/TestPackedInts.java?rev=1600637&r1=1600636&r2=1600637&view=diff
==============================================================================
--- lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/util/packed/TestPackedInts.java (original)
+++ lucene/dev/branches/branch_4x/lucene/core/src/test/org/apache/lucene/util/packed/TestPackedInts.java Thu Jun 5 12:38:37 2014
@@ -823,7 +823,6 @@ public class TestPackedInts extends Luce
IndexInput in = directory.openInput("packed-ints.bin", IOContext.DEFAULT);
PackedInts.Reader reader = PackedInts.getReader(in);
- assertEquals(mutable.getBitsPerValue(), reader.getBitsPerValue());
assertEquals(valueCount, reader.size());
if (mutable instanceof Packed64SingleBlock) {
// make sure that we used the right format so that the reader has