You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "cdmikechen (Jira)" <ji...@apache.org> on 2019/09/20 16:31:00 UTC
[jira] [Created] (HIVE-22224) Support Parquet-Avro Timestamp Type
cdmikechen created HIVE-22224:
---------------------------------
Summary: Support Parquet-Avro Timestamp Type
Key: HIVE-22224
URL: https://issues.apache.org/jira/browse/HIVE-22224
Project: Hive
Issue Type: Bug
Components: Database/Schema
Affects Versions: 2.3.6, 2.3.5
Reporter: cdmikechen
Fix For: 2.3.7
When user create an external table and import a parquet-avro data with 1.8.2 version which supported logical_type in Hive2.3 or before version, Hive can not read timestamp type column data correctly.
Hive will read it as LongWritable which it actually stores as long(logical_type=timestamp-millis).So we may add some codes in org.apache.hadoop.hive.serde2.objectinspector.primitive.WritableTimestampObjectInspector.java to let Hive cast long type to timestamp type.
Some code like below:
public Timestamp getPrimitiveJavaObject(Object o) {
if (o instanceof LongWritable) {
return new Timestamp(((LongWritable) o).get());
}
return o == null ? null : ((TimestampWritable) o).getTimestamp();
}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)