Aleksandr Efimov has posted comments on this change. ( 
http://gerrit.cloudera.org:8080/24260 )

Change subject: IMPALA-14946: Catch "trunc" error within Calcite planner
......................................................................


Patch Set 2:

(1 comment)

One question about the wording of the new error.

http://gerrit.cloudera.org:8080/#/c/24260/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/operators/ImpalaAdjustScaleFunction.java
File 
java/calcite-planner/src/main/java/org/apache/impala/calcite/operators/ImpalaAdjustScaleFunction.java:

http://gerrit.cloudera.org:8080/#/c/24260/2/java/calcite-planner/src/main/java/org/apache/impala/calcite/operators/ImpalaAdjustScaleFunction.java@63
PS2, Line 63:         throw new RuntimeException("Invalid Truncate Unit for 
scale");
This branch also catches the plain numeric overload, where the original planner 
has messages of its own - FunctionCallExpr.java:580 "truncate() cannot be 
called with a NULL second argument." for "truncate(d1, NULL)", and :589 
"truncate() must be called with a constant second argument." for "truncate(d1, 
int_col)". Both come out as "Invalid Truncate Unit for scale" here, so the 
mismatch this patch closes for trunc(string, ...) stays open one step over. 
Since TRUNC and DTRUNC are registered as ImpalaAdjustScaleFunction, the 
timestamp overload never gets a chance and every trunc lands in this method, 
which is how the exprs.test query got here in the first place.

Would keying the message off operand 0 work - the truncate-unit wording when it 
is not numeric, the constant/NULL wording when it is? Not blocking either way, 
the raw NPE was clearly worse than any of these.



--
To view, visit http://gerrit.cloudera.org:8080/24260
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: comment
Gerrit-Change-Id: I766c138fae027ba0d919daa5cce38dc93d7144d1
Gerrit-Change-Number: 24260
Gerrit-PatchSet: 2
Gerrit-Owner: Steve Carlin <[email protected]>
Gerrit-Reviewer: Aleksandr Efimov <[email protected]>
Gerrit-Reviewer: Aman Sinha <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Michael Smith <[email protected]>
Gerrit-Reviewer: Quanlong Huang <[email protected]>
Gerrit-Comment-Date: Sun, 23 Aug 2026 14:44:23 +0000
Gerrit-HasComments: Yes

Reply via email to