Repository: hive Updated Branches: refs/heads/master fff86f3a6 -> 00e8826ba
http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java index 62e6c8f..ba407aa 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveCharObjectInspector.java @@ -18,10 +18,17 @@ package org.apache.hadoop.hive.serde2.objectinspector.primitive; import org.apache.hadoop.hive.common.type.HiveChar; +import org.apache.hadoop.hive.serde2.io.DoubleWritable; import org.apache.hadoop.hive.serde2.io.HiveCharWritable; +import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable; +import org.apache.hadoop.hive.serde2.io.TimestampWritable; import org.apache.hadoop.hive.serde2.typeinfo.BaseCharUtils; import org.apache.hadoop.hive.serde2.typeinfo.CharTypeInfo; import org.apache.hadoop.io.Text; +import org.apache.hadoop.io.FloatWritable; +import org.apache.hadoop.io.LongWritable; +import org.apache.hadoop.io.IntWritable; +import org.apache.hadoop.io.BooleanWritable; import java.nio.ByteBuffer; import java.nio.CharBuffer; @@ -45,8 +52,11 @@ public class WritableHiveCharObjectInspector extends AbstractPrimitiveWritableOb return null; } - if (o instanceof Text) { - String str = ((Text)o).toString(); + if ((o instanceof Text) || (o instanceof TimestampWritable) + || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable) + || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable) + || (o instanceof BooleanWritable)) { + String str = o.toString(); return new HiveChar(str, ((CharTypeInfo)typeInfo).getLength()); } @@ -65,8 +75,11 @@ public class WritableHiveCharObjectInspector extends AbstractPrimitiveWritableOb return null; } - if (o instanceof Text) { - String str = ((Text)o).toString(); + if ((o instanceof Text) || (o instanceof TimestampWritable) + || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable) + || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable) + || (o instanceof BooleanWritable)) { + String str = o.toString(); HiveCharWritable hcw = new HiveCharWritable(); hcw.set(str, ((CharTypeInfo)typeInfo).getLength()); return hcw; http://git-wip-us.apache.org/repos/asf/hive/blob/00e8826b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java ---------------------------------------------------------------------- diff --git a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java index a6f42a5..81c0550 100644 --- a/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java +++ b/serde/src/java/org/apache/hadoop/hive/serde2/objectinspector/primitive/WritableHiveVarcharObjectInspector.java @@ -17,17 +17,20 @@ */ package org.apache.hadoop.hive.serde2.objectinspector.primitive; -import org.apache.hadoop.hive.common.type.HiveChar; +import org.apache.hadoop.hive.serde2.io.DoubleWritable; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.apache.hadoop.hive.common.type.HiveVarchar; -import org.apache.hadoop.hive.serde2.io.HiveCharWritable; -import org.apache.hadoop.hive.serde2.io.HiveVarcharWritable; -import org.apache.hadoop.hive.serde2.typeinfo.CharTypeInfo; import org.apache.hadoop.hive.serde2.typeinfo.VarcharTypeInfo; import org.apache.hadoop.hive.serde2.typeinfo.BaseCharUtils; +import org.apache.hadoop.hive.serde2.io.HiveDecimalWritable; +import org.apache.hadoop.hive.serde2.io.TimestampWritable; +import org.apache.hadoop.hive.serde2.io.HiveVarcharWritable; import org.apache.hadoop.io.Text; -import org.apache.hive.common.util.HiveStringUtils; +import org.apache.hadoop.io.FloatWritable; +import org.apache.hadoop.io.LongWritable; +import org.apache.hadoop.io.IntWritable; +import org.apache.hadoop.io.BooleanWritable; public class WritableHiveVarcharObjectInspector extends AbstractPrimitiveWritableObjectInspector implements SettableHiveVarcharObjectInspector { @@ -49,8 +52,11 @@ implements SettableHiveVarcharObjectInspector { return null; } - if (o instanceof Text) { - String str = ((Text)o).toString(); + if ((o instanceof Text) || (o instanceof TimestampWritable) + || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable) + || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable) + || (o instanceof BooleanWritable)) { + String str = o.toString(); return new HiveVarchar(str, ((VarcharTypeInfo)typeInfo).getLength()); } @@ -69,8 +75,11 @@ implements SettableHiveVarcharObjectInspector { return null; } - if (o instanceof Text) { - String str = ((Text)o).toString(); + if ((o instanceof Text) || (o instanceof TimestampWritable) + || (o instanceof HiveDecimalWritable) || (o instanceof DoubleWritable) + || (o instanceof FloatWritable) || (o instanceof LongWritable) || (o instanceof IntWritable) + || (o instanceof BooleanWritable)) { + String str = o.toString(); HiveVarcharWritable hcw = new HiveVarcharWritable(); hcw.set(str, ((VarcharTypeInfo)typeInfo).getLength()); return hcw;
