Raghuraman Murugaiyan created HIVE-17418: --------------------------------------------
Summary: Hive Query fails with ClassCast Exception when Table and partitions are having different fileformat Key: HIVE-17418 URL: https://issues.apache.org/jira/browse/HIVE-17418 Project: Hive Issue Type: Bug Components: Hive Affects Versions: 2.2.0, 2.1.1 Reporter: Raghuraman Murugaiyan We have a partitioned table in RCFILE format, and it has a partition in ORC format. When we query the data from that partition, it gives the following runtime error: 2017-08-30 20:16:41,035 FATAL [IPC Server handler 3 on 39129] org.apache.hadoop.mapred.TaskAttemptListenerImpl: Task: attempt_1503513879002_0178_m_000000_0 - exited : java.lang.RuntimeException: org.apache.hadoop.hive.ql.metadata.HiveException: Hive Runtime Error while processing row [Error getting row data with exception java.lang.ClassCastException: org.apache.hadoop.hive.ql.io.orc.OrcStruct cannot be cast to org.apache.hadoop.hive.serde2.columnar.ColumnarStructBase at org.apache.hadoop.hive.serde2.objectinspector.ColumnarStructObjectInspector.getStructFieldData(ColumnarStructObjectInspector.java:61) at org.apache.hadoop.hive.serde2.objectinspector.UnionStructObjectInspector.getStructFieldData(UnionStructObjectInspector.java:157) at org.apache.hadoop.hive.serde2.SerDeUtils.buildJSONString(SerDeUtils.java:364) at org.apache.hadoop.hive.serde2.SerDeUtils.getJSONString(SerDeUtils.java:200) How to reproduce: Queries to generate related tables: CREATE EXTERNAL TABLE test_table ( key INT, value STRING ) PARTITIONED BY ( data_date STRING ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' STORED AS RCFILE; CREATE TABLE data_table ( key INT, value STRING ) ROW FORMAT DELIMITED FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' STORED AS ORC; 2. Queries to generate partition: ALTER TABLE test_table ADD PARTITION (data_date=20170829); ALTER TABLE test_table PARTITION (data_date=20170829) SET FILEFORMAT ORC; 3. Query to load data: INSERT INTO TABLE test_table PARTITION (data_date=20170829) SELECT key, value FROM data_table WHERE data_date=20170829; 4. Query to reproduce the error: SELECT key, value FROM test_table WHERE data_date=20170829; I have run this query in Hive 2.1.1 and Hive 2.2.1 where it got failed and ran fine in the Hive 1.2.1 built. Please advise us, whether we can create a Table in one file format and the new partitions in a different file format? -- This message was sent by Atlassian JIRA (v6.4.14#64029)