Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Reviewed
Description
Consider the following testcase:
create table tst5 (key string, value string) partitioned by (ds string) stored as rcfile;
insert overwrite table tst5 partition (ds='1') select * from src;
insert overwrite table tst5 partition (ds='2') select * from src;
insert overwrite table tst5 partition (ds='3') select * from src;
alter table tst5 stored as sequencefile;
insert overwrite table tst5 partition (ds='4') select * from src;
insert overwrite table tst5 partition (ds='5') select * from src;
insert overwrite table tst5 partition (ds='6') select * from src;
alter table tst5 set serde 'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe';
insert overwrite table tst5 partition (ds='7') select * from src;
insert overwrite table tst5 partition (ds='8') select * from src;
insert overwrite table tst5 partition (ds='9') select * from src;
The following query works fine:
select key + key, value from tst5 where ((ds = '4') or (ds = '1'));
since both the partitions use ColumnarSerDe
But the following query fails:
select key + key, value from tst5 where ((ds = '4') or (ds = '1') or (ds='7'));
since different serdes are used.
Attachments
Attachments
Issue Links
- relates to
-
HIVE-3833 object inspectors should be initialized based on partition metadata
- Closed