[
https://issues.apache.org/jira/browse/HIVE-10591?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14526258#comment-14526258
]
Prasanth Jayachandran commented on HIVE-10591:
----------------------------------------------
[~owen.omalley]/[~gopalv] Can you someone review the patch?
> Support integer type promotion in ORC
> -------------------------------------
>
> Key: HIVE-10591
> URL: https://issues.apache.org/jira/browse/HIVE-10591
> Project: Hive
> Issue Type: New Feature
> Affects Versions: 1.3.0
> Reporter: Prasanth Jayachandran
> Assignee: Prasanth Jayachandran
> Attachments: HIVE-10591.1.patch
>
>
> ORC currently does not support schema-on-read. If we alter an ORC table with
> 'int' type to 'bigint' and if we query the altered table ClassCastException
> will be thrown as the schema on read from table descriptor will expect
> LongWritable whereas ORC will return IntWritable based on file schema stored
> within ORC file. OrcSerde currently doesn't do any type conversions or type
> promotions for performance reasons in inner loop. Since smallints, ints and
> bigints are stored in the same way in ORC, it will be possible be allow such
> type promotions without hurting performance. Following type promotions can be
> supported without any casting
> smallint -> int
> smallint -> bigint
> int -> bigint
> Tinyint promotion is not possible without casting as tinyints are stored
> using RLE byte writer whereas smallints, ints and bigints are stored using
> RLE integer writer.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)