hive-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Szehon Ho (JIRA)" <>
Subject [jira] [Updated] (HIVE-10591) Support limited integer type promotion in ORC
Date Tue, 05 May 2015 20:23:00 GMT


Szehon Ho updated HIVE-10591:
    Attachment: HIVE-10591.2.patch

Attaching again due to build machine error.

> Support limited integer type promotion in ORC
> ---------------------------------------------
>                 Key: HIVE-10591
>                 URL:
>             Project: Hive
>          Issue Type: New Feature
>    Affects Versions: 1.3.0
>            Reporter: Prasanth Jayachandran
>            Assignee: Prasanth Jayachandran
>         Attachments: HIVE-10591.1.patch, HIVE-10591.2.patch, HIVE-10591.2.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

View raw message