[
https://issues.apache.org/jira/browse/CALCITE-3809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17253148#comment-17253148
]
Julian Hyde commented on CALCITE-3809:
--------------------------------------
Well, it was not getting as far as they runtime allow-list you just mentioned
because compile-time allow-list was too narrow.
The way it was before (a narrow compile-time deny-list) was better. Someone
added a test with a new operator to {{RexProgramTest}}, they would get a
failure (because your {{visitCall}} method would {{throw unbound(call);}}) and
then they would implement the operator in {{RexInterpreter}}.
> RexSimplify simplifies nondeterministic function incorrectly
> ------------------------------------------------------------
>
> Key: CALCITE-3809
> URL: https://issues.apache.org/jira/browse/CALCITE-3809
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.21.0
> Reporter: Chunwei Lei
> Assignee: Chunwei Lei
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.23.0
>
> Time Spent: 5h 20m
> Remaining Estimate: 0h
>
> For example, {{rand() = rand()}} will be simplified to {{IS NOT
> NULL(rand())}}, which is wrong because {{rand() = rand()}} might be false
> while {{IS NOT NULL(rand())}} is always true.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)