Zoltan Haindrich created HIVE-24963:
---------------------------------------
Summary: Windowing expression may loose its input in some cases
Key: HIVE-24963
URL: https://issues.apache.org/jira/browse/HIVE-24963
Project: Hive
Issue Type: Bug
Reporter: Zoltan Haindrich
Assignee: Zoltan Haindrich
{code}
drop table if exists sss;
CREATE TABLE `sss`(
`user_id` bigint,
`user_mid` string
)
PARTITIONED BY (
`dt` string)
STORED AS ORC
;
insert into sss partition(dt='part1') VALUES (12345,'user_mid
v1'),(12345,'user_mid v1'),(12345,'user_mid v1'),(12345,'user_mid
v1'),(12345,'user_mid v1');
set hive.auto.convert.join.noconditionaltask.size=1;
WITH
unioned_user AS (
SELECT
*,
row_number() OVER (PARTITION BY user_mid ORDER BY dt ASC) AS r_asc,
row_number() OVER (PARTITION BY user_mid ORDER BY dt DESC) AS
r_desc
FROM (
SELECT DISTINCT
dt,
user_mid
FROM sss
WHERE dt = '20210228'
UNION ALL
SELECT DISTINCT
dt,
user_mid
FROM sss
) AS uni
),
merged_user AS (
SELECT
a.user_mid
FROM (SELECT * FROM unioned_user WHERE r_asc = 1) AS a
INNER JOIN (SELECT * FROM unioned_user WHERE r_desc = 1) AS d
ON a.user_mid = d.user_mid
)
Select count(*) from merged_user;
{cdode}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)