commit a749b74aad8c51c6dfeb495cf4f2e23fbbae6bbe Author: Owen O'Malley Date: Sun Jun 28 17:04:49 2015 -0700 HIVE-11137. In DateWritable remove use of LazyBinaryUtils. diff --git serde/src/java/org/apache/hadoop/hive/serde2/io/DateWritable.java serde/src/java/org/apache/hadoop/hive/serde2/io/DateWritable.java index 6cedf4c..e69351f 100644 --- serde/src/java/org/apache/hadoop/hive/serde2/io/DateWritable.java +++ serde/src/java/org/apache/hadoop/hive/serde2/io/DateWritable.java @@ -25,9 +25,6 @@ import java.util.TimeZone; import java.util.concurrent.TimeUnit; -import org.apache.hadoop.hive.serde2.ByteStream.RandomAccessOutput; -import org.apache.hadoop.hive.serde2.lazybinary.LazyBinaryUtils; -import org.apache.hadoop.hive.serde2.lazybinary.LazyBinaryUtils.VInt; import org.apache.hadoop.io.WritableComparable; import org.apache.hadoop.io.WritableUtils; @@ -146,17 +143,6 @@ public static int dateToDays(Date d) { return millisToDays(millisLocal); } - public void setFromBytes(byte[] bytes, int offset, int length, VInt vInt) { - LazyBinaryUtils.readVInt(bytes, offset, vInt); - assert (length == vInt.length); - set(vInt.value); - } - - public void writeToByteStream(RandomAccessOutput byteStream) { - LazyBinaryUtils.writeVInt(byteStream, getDays()); - } - - @Override public void readFields(DataInput in) throws IOException { daysSinceEpoch = WritableUtils.readVInt(in); diff --git serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryDate.java serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryDate.java index d0c2504..4200e26 100644 --- serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryDate.java +++ serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinaryDate.java @@ -55,6 +55,8 @@ */ @Override public void init(ByteArrayRef bytes, int start, int length) { - data.setFromBytes(bytes.getData(), start, length, vInt); + LazyBinaryUtils.readVInt(bytes.getData(), start, vInt); + assert (length == vInt.length); + data.set(vInt.value); } } diff --git serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinarySerDe.java serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinarySerDe.java index 3d14fbe..a5dc5d8 100644 --- serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinarySerDe.java +++ serde/src/java/org/apache/hadoop/hive/serde2/lazybinary/LazyBinarySerDe.java @@ -250,9 +250,9 @@ public static void serializeStruct(RandomAccessOutput byteStream, Object[] field * * @param byteStream * the byte stream storing the serialization data - * @param obj + * @param fieldData * the struct object to serialize - * @param objInspector + * @param fieldOis * the struct object inspector * @param warnedOnceNullMapKey a boolean indicating whether a warning * has been issued once already when encountering null map keys @@ -311,6 +311,11 @@ public BooleanRef(boolean v) { public boolean value; } + private static void writeDateToByteStream(RandomAccessOutput byteStream, + DateWritable date) { + LazyBinaryUtils.writeVInt(byteStream, date.getDays()); + } + /** * A recursive function that serialize an object to a byte buffer based on its * object inspector. @@ -422,7 +427,7 @@ public static void serialize(RandomAccessOutput byteStream, Object obj, case DATE: { DateWritable d = ((DateObjectInspector) poi).getPrimitiveWritableObject(obj); - d.writeToByteStream(byteStream); + writeDateToByteStream(byteStream, d); return; } case TIMESTAMP: {