【发布时间】:2017-03-31 01:37:13
【问题描述】:
- Hadoop 发行版:HDP 2.4.2
- Hive 版本:1.2.1
我有一个 ORC 表 tbl1 有 timestamp 列。我插入了这些值:
insert into tbl1 values ('0001-01-01 00:00:20.0');
insert into tbl1 values ('9999-01-01 00:00:20.0');
我创建了另一个 ORC 表 tbl2 具有 timestamp 列。然后我尝试了:
insert into tbl2 select * from tbl1;
tbl2 中的数据已损坏:
1754-08-28 22:44:01.128654848
1815-03-31 05:56:28.066277376
- 我是否使用了超出范围的值?
- 时间戳有具体的范围吗?
此问题仅适用于ORC 文件格式。对于 textfile、avro、parquet 等其他文件格式,它工作正常。
【问题讨论】:
-
问题无法在 Hive 1.1.0-cdh5.7.0 上重现
-
@DuduMarkovitz 我在 HDP 2.4.2 Hive 1.2.1 上测试过
-
同样无法在 Hadoop 2.7.3.2.5.3.0-37、Hive 1.2.1000.2.5.3.0-37 上重现
-
@DuduMarkovitz 这可以在 Cloudera 发行版上复制。检查我对 Apache Hive 的回答。
-
酷 :-) ......