Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
0.13.1, 0.14.0
Description
Following is a small reproducible case for the issue
create table orc1
stored as orc
tblproperties("orc.compress"="ZLIB")
as
select rn
from
(
select cast(1 as int) as rn from src limit 1
union all
select cast(100 as int) as rn from src limit 1
union all
select cast(10000 as int) as rn from src limit 1
) t;
create table orc_rn1 (rn int);
create table orc_rn2 (rn int);
create table orc_rn3 (rn int);
// These inserts should produce 3 rows but only 1 row is produced
from orc1 a
insert overwrite table orc_rn1 select a.* where a.rn < 100
insert overwrite table orc_rn2 select a.* where a.rn >= 100 and a.rn < 1000
insert overwrite table orc_rn3 select a.* where a.rn >= 1000;
select * from orc_rn1
union all
select * from orc_rn2
union all
select * from orc_rn3;
The expected output of the query is
1
100
10000
But with vectorization enabled we get
1