[
https://issues.apache.org/jira/browse/CALCITE-6990?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18041647#comment-18041647
]
Alessandro Solimando commented on CALCITE-6990:
-----------------------------------------------
If you had `WHERE colLeft > rand() AND colRight() > rand()` and you where to
push the two subfilters to the two join operands, that would surely be a
problem to me.
In your case, off the top of my head I can't see how this could change the
semantics, but there might be corner cases I am not considering, but can we
guarantee it won't be happening for wrong cases like the one I described?
How would other well-established databases act in this situation? I think it's
safer to research what happens in Postgres etc. and conform to what they do in
case the behavior is consistent.
> Optimization passes should be checked for handling DynamicParameter
> -------------------------------------------------------------------
>
> Key: CALCITE-6990
> URL: https://issues.apache.org/jira/browse/CALCITE-6990
> Project: Calcite
> Issue Type: Task
> Components: core
> Affects Versions: 1.39.0
> Reporter: Mihai Budiu
> Priority: Minor
>
> Several PRs have fixed optimization passes which are wrong when queries can
> contain dynamic parameters. Perhaps all of the passes should be audited with
> this case in mind.
> See [CALCITE-6647] and [CALCITE-6983]
--
This message was sent by Atlassian Jira
(v8.20.10#820010)