Merge pull request #53 from apache/revert-51-theta-sketch-estimate-fix-byte-length
Revert "Fix theta sketch estimation if input has extra bytes"
diff --git a/src/main/java/org/apache/datasketches/hive/theta/EstimateSketchUDF.java b/src/main/java/org/apache/datasketches/hive/theta/EstimateSketchUDF.java
index 058f875..dd4c1a7 100644
--- a/src/main/java/org/apache/datasketches/hive/theta/EstimateSketchUDF.java
+++ b/src/main/java/org/apache/datasketches/hive/theta/EstimateSketchUDF.java
@@ -56,8 +56,7 @@
return 0.0;
}
- final byte[] serializedSketch = new byte[binarySketch.getLength()];
- System.arraycopy(binarySketch.getBytes(), 0, serializedSketch, 0, binarySketch.getLength());
+ final byte[] serializedSketch = binarySketch.getBytes();
if (serializedSketch.length <= EMPTY_SKETCH_SIZE_BYTES) {
return 0.0;
diff --git a/src/test/java/org/apache/datasketches/hive/theta/EstimateSketchUDFTest.java b/src/test/java/org/apache/datasketches/hive/theta/EstimateSketchUDFTest.java
index d538afa..3e2811f 100644
--- a/src/test/java/org/apache/datasketches/hive/theta/EstimateSketchUDFTest.java
+++ b/src/test/java/org/apache/datasketches/hive/theta/EstimateSketchUDFTest.java
@@ -97,24 +97,4 @@
assertEquals(128.0, testResult);
}
- @Test
- public void evaluateRespectsByteLength() {
- // In some instances, the BytesWritable buffer returned by getBytes() might be larger than the actual sketch bytes.
- // getLength() should give the correct length to use.
- //
- // https://github.com/apache/incubator-datasketches-hive/issues/50
-
- byte[] inputBytes = new byte[]{
- (byte) 0x01, (byte) 0x03, (byte) 0x03, (byte) 0x00,
- (byte) 0x00, (byte) 0x3a, (byte) 0xcc, (byte) 0x93,
- (byte) 0x15, (byte) 0xf9, (byte) 0x7d, (byte) 0xcb,
- (byte) 0xbd, (byte) 0x86, (byte) 0xa1, (byte) 0x05,
- (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00,
- (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0x00
- };
- BytesWritable input = new BytesWritable(inputBytes, 16);
- EstimateSketchUDF estimate = new EstimateSketchUDF();
- Double testResult = estimate.evaluate(input);
- assertEquals(1.0, testResult, 0.0);
- }
}