github-actions[bot] commented on code in PR #64531:
URL: https://github.com/apache/doris/pull/64531#discussion_r3412672535


##########
be/src/exprs/function/simple_function_factory.h:
##########
@@ -303,8 +301,6 @@ class SimpleFunctionFactory {
             register_function_string(instance);
             register_function_in(instance);
             register_function_collection_in(instance);
-            register_function_if(instance);

Review Comment:
   Removing `nullif` from `SimpleFunctionFactory` is not safe unless every FE 
path rewrites it before thrift serialization. The new rewrite is only in 
Nereids expression normalization, but legacy `FunctionCallExpr` still 
serializes non-aggregate calls as `TExprNodeType.FUNCTION_CALL` 
(`ExprToThriftVisitor`), BE `vexpr.cpp` only special-cases 
`if`/`ifnull`/`nvl`/`coalesce`, and `VectorizedFnCall` now cannot resolve 
`nullif`. Non-Nereids queries (`enable_nereids_planner=false`) and load column 
mappings translated through `PlanUtils.translateToLegacyExpr` can still reach 
BE as `nullif`, so they will fail with "Could not find function nullif". Please 
keep the BE function or add the rewrite to all legacy/load translation paths 
and cover those paths with tests.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to