Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
0.13.0, 0.14.0
-
None
Description
Vectorized Coalesce uses BytesColumnVector.setElement which does not set the output string length correctly.
create table str_str_orc (str1 string, str2 string) stored as orc; insert into table str_str_orc values (null, "X"), ("0", "X"), ("1", "X"), (null, "y"); EXPLAIN SELECT str2, ROUND(sum(cast(COALESCE(str1, 0) as int))/60, 2) as result from str_str_orc GROUP BY str2; SELECT str2, ROUND(sum(cast(COALESCE(str1, 0) as int))/60, 2) as result from str_str_orc GROUP BY str2; EXPLAIN SELECT COALESCE(str1, 0) as result from str_str_orc; SELECT COALESCE(str1, 0) as result from str_str_orc;
Produces different results when vectorized and not vectorized.