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 2015/11/12 03:13:11 UTC
[jira] [Updated] (HIVE-11604) HIVE return wrong results in some
queries with PTF function
[ https://issues.apache.org/jira/browse/HIVE-11604?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Sergey Shelukhin updated HIVE-11604:
------------------------------------
Should this issue be backported to branch-1? It looks like a bug.
> HIVE return wrong results in some queries with PTF function
> -----------------------------------------------------------
>
> Key: HIVE-11604
> URL: https://issues.apache.org/jira/browse/HIVE-11604
> Project: Hive
> Issue Type: Bug
> Components: Logical Optimizer
> Affects Versions: 1.2.0, 1.1.0, 2.0.0
> Reporter: Yongzhi Chen
> Assignee: Yongzhi Chen
> Fix For: 2.0.0
>
> Attachments: HIVE-11604.1.patch, HIVE-11604.2.patch
>
>
> Following query returns empty result which is not right:
> {noformat}
> select ddd.id, ddd.fkey, aaa.name
> from (
> select id, fkey,
> row_number() over (partition by id, fkey) as rnum
> from tlb1 group by id, fkey
> ) ddd
> inner join tlb2 aaa on aaa.fid = ddd.fkey;
> {noformat}
> After remove row_number() over (partition by id, fkey) as rnum from query, the right result returns.
> Reproduce:
> {noformat}
> create table tlb1 (id int, fkey int, val string);
> create table tlb2 (fid int, name string);
> insert into table tlb1 values(100,1,'abc');
> insert into table tlb1 values(200,1,'efg');
> insert into table tlb2 values(1, 'key1');
> select ddd.id, ddd.fkey, aaa.name
> from (
> select id, fkey,
> row_number() over (partition by id, fkey) as rnum
> from tlb1 group by id, fkey
> ) ddd
> inner join tlb2 aaa on aaa.fid = ddd.fkey;
> ....
> INFO : Ended Job = job_local1070163923_0017
> +---------+-----------+-----------+--+
> No rows selected (14.248 seconds)
> | ddd.id | ddd.fkey | aaa.name |
> +---------+-----------+-----------+--+
> +---------+-----------+-----------+--+
> 0: jdbc:hive2://localhost:10000> select ddd.id, ddd.fkey, aaa.name
> from (
> select id, fkey
> from tlb1 group by id, fkey
> ) ddd
> inner join tlb2 aaa on aaa.fid = ddd.fkey;select ddd.id, ddd.fkey, aaa.name
> 0: jdbc:hive2://localhost:10000> from (
> 0: jdbc:hive2://localhost:10000> select id, fkey
> 0: jdbc:hive2://localhost:10000> from tlb1 group by id, fkey
> 0: jdbc:hive2://localhost:10000> ) ddd
> 0: jdbc:hive2://localhost:10000>
> inner join tlb2 aaa on aaa.fid = ddd.fkey;
> INFO : Number of reduce tasks not specified. Estimated from input data size: 1
> ...
> INFO : Ended Job = job_local672340505_0019
> +---------+-----------+-----------+--+
> 2 rows selected (14.383 seconds)
> | ddd.id | ddd.fkey | aaa.name |
> +---------+-----------+-----------+--+
> | 100 | 1 | key1 |
> | 200 | 1 | key1 |
> +---------+-----------+-----------+--+
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)