You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Prasanth Jayachandran (JIRA)" <ji...@apache.org> on 2016/07/26 01:29:20 UTC

[jira] [Created] (HIVE-14333) ORC schema evolution from float to double changes precision and breaks filters

Prasanth Jayachandran created HIVE-14333:
--------------------------------------------

             Summary: ORC schema evolution from float to double changes precision and breaks filters
                 Key: HIVE-14333
                 URL: https://issues.apache.org/jira/browse/HIVE-14333
             Project: Hive
          Issue Type: Bug
          Components: ORC
    Affects Versions: 2.1.0, 2.2.0
            Reporter: Prasanth Jayachandran
            Priority: Critical


ORC vs text schema evolution from float to double changes precision

{code:title=Text Schema Evolution}
hive> create table float_text(f float);
hive> insert into float_text values(74.72);
hive> select f from float_text;
OK
74.72
hive> alter table float_text change column f f double;
hive> select f from float_text;
OK
74.72
{code}

{code:title=Orc Schema Evolution}
hive> create table float_orc(f float) stored as orc;
hive> insert into float_orc values(74.72);
hive> select f from float_orc;
OK
74.72
hive> alter table float_orc change column f f double;
hive> select f from float_orc;
OK
74.72000122070312
{code}

This will break all filters on the evolved column "f"

{code:title=Filter returning no results}
hive> set hive.optimize.index.filter=false;
hive> select f from float_orc where f=74.72;
OK
{code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)