You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@impala.apache.org by "Aleksandr Efimov (Jira)" <ji...@apache.org> on 2026/10/02 10:30:00 UTC
[jira] [Created] (IMPALA-15467) Calcite planner fails to infer DECIMAL return type for IF
Aleksandr Efimov created IMPALA-15467:
-----------------------------------------
Summary: Calcite planner fails to infer DECIMAL return type for IF
Key: IMPALA-15467
URL: https://issues.apache.org/jira/browse/IMPALA-15467
Project: IMPALA
Issue Type: Bug
Reporter: Aleksandr Efimov
Calcite fails to compile valid IF expressions with DECIMAL branches:
SELECT IF(TRUE, CAST(1 AS DECIMAL(15,3)), CAST(2 AS DECIMAL(15,3)));
SELECT IF(TRUE, CAST(1 AS DECIMAL(15,3)), NULL);
OriginalPlanner compiles both; Calcite reports Unknown type INVALID_TYPE.
Reproduced at 2f022a5ca0fc99670bcf197a1f89016cdf78d114 without planner fallback.
DECIMAL return-type inference incorrectly includes IF's BOOLEAN condition.
It should use only the two value branches.
The candidate fix passes the Java build and 14 related Maven tests, including
precision/scale and NULL regressions. Full upstream precommit and E2E are pending.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)