[
https://issues.apache.org/jira/browse/CALCITE-6534?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
suibianwanwan updated CALCITE-6534:
-----------------------------------
Description:
In JoinOnLeftCalcUnifyRule, JoinOnRIghtCalcUnifyRule, JoinOnCalcUnifyRule,
calcite tries to pull up the calc operator to make Query equivalent to target .
In CALCITE-6501, for the case where the assert is due to a difference in
nullablity, we do an early intercept and return null. This will result in some
cases that can be rewritten not being able to be rewritten.
Therefore, We can adjust the nullability of the type if this rewrite maintains
semantics. if RexNode satisfies null-if-null, we will adjust the nullability,
if not, we should reject this rewrite regardless of the nullablility.
was:
In JoinOnLeftCalcUnifyRule, JoinOnRIghtCalcUnifyRule, JoinOnCalcUnifyRule,
calcite tries to pull up the calc operator to make Query equivalent to target .
In [CALCITE-6501|https://issues.apache.org/jira/browse/CALCITE-6501], for the
case where the assert is due to a difference in nullablity, we do an early
intercept and return null. This will result in some cases that can be rewritten
not being able to be rewritten.
We can fix nullablility if this rewrite maintains semantics
> Adjust type when pulling up Calc in JoinUnifyRule
> -------------------------------------------------
>
> Key: CALCITE-6534
> URL: https://issues.apache.org/jira/browse/CALCITE-6534
> Project: Calcite
> Issue Type: Improvement
> Reporter: suibianwanwan
> Assignee: suibianwanwan
> Priority: Minor
> Labels: pull-request-available
>
> In JoinOnLeftCalcUnifyRule, JoinOnRIghtCalcUnifyRule, JoinOnCalcUnifyRule,
> calcite tries to pull up the calc operator to make Query equivalent to target
> . In CALCITE-6501, for the case where the assert is due to a difference in
> nullablity, we do an early intercept and return null. This will result in
> some cases that can be rewritten not being able to be rewritten.
> Therefore, We can adjust the nullability of the type if this rewrite
> maintains semantics. if RexNode satisfies null-if-null, we will adjust the
> nullability, if not, we should reject this rewrite regardless of the
> nullablility.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)