You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "Sergey Shelukhin (JIRA)" <ji...@apache.org> on 2018/02/01 19:23:00 UTC
[jira] [Updated] (HIVE-18605) text and int compares can produce
surprising results
[ https://issues.apache.org/jira/browse/HIVE-18605?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Shelukhin updated HIVE-18605:
------------------------------------
Description:
{noformat}
create table foo (i int) STORED AS. . . . . . . . . . . . . . . . . . . . . . .> INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'. . . . . . . . . . . . . . . . . . . . . . .> OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat';
> insert into foo values (1);
> select * from foo where i != 'foo';
+--------+
| foo.i |
+--------+
+--------+
No rows selected (0.562 seconds)
> select * from foo where i != '2';
+--------+
| foo.i |
+--------+
| 1 |
+--------+
{noformat}
This can be worked around with an explicit cast to string.
Double is used as a common type according to [~ashutoshc].
Seems like if this is the case, there should be a failure when converting foo to double.
was:
{noformat}
create table foo (i int) STORED AS. . . . . . . . . . . . . . . . . . . . . . .> INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'. . . . . . . . . . . . . . . . . . . . . . .> OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat';
> insert into foo values (1);
> create table foo (i int) STORED AS. . . . . . . . . . . . . . . . . . . . . . .> INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'. . . . . . . . . . . . . . . . . . . . . . .> OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat';
> insert into foo values (1);
> select * from foo where i != 'foo';
+--------+
| foo.i |
+--------+
+--------+
No rows selected (0.562 seconds)
> select * from foo where i != '2';
+--------+
| foo.i |
+--------+
| 1 |
+--------+
{noformat}
This can be worked around with an explicit cast to string.
Double is used as a common type according to [~ashutoshc].
Seems like if this is the case, there should be a failure when converting foo to double.
> text and int compares can produce surprising results
> ----------------------------------------------------
>
> Key: HIVE-18605
> URL: https://issues.apache.org/jira/browse/HIVE-18605
> Project: Hive
> Issue Type: Bug
> Reporter: Ankita Kapratwar
> Priority: Major
>
> {noformat}
> create table foo (i int) STORED AS. . . . . . . . . . . . . . . . . . . . . . .> INPUTFORMAT 'org.apache.hadoop.mapred.TextInputFormat'. . . . . . . . . . . . . . . . . . . . . . .> OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.IgnoreKeyTextOutputFormat';
> > insert into foo values (1);
> > select * from foo where i != 'foo';
> +--------+
> | foo.i |
> +--------+
> +--------+
> No rows selected (0.562 seconds)
> > select * from foo where i != '2';
> +--------+
> | foo.i |
> +--------+
> | 1 |
> +--------+
> {noformat}
> This can be worked around with an explicit cast to string.
> Double is used as a common type according to [~ashutoshc].
> Seems like if this is the case, there should be a failure when converting foo to double.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)