xiong duan created CALCITE-4988:
-----------------------------------
Summary: ((A IS NOT NULL OR B) AND A) can't be simplify to (A)
When A is deterministic
Key: CALCITE-4988
URL: https://issues.apache.org/jira/browse/CALCITE-4988
Project: Calcite
Issue Type: Bug
Affects Versions: 1.29.0
Reporter: xiong duan
Assignee: xiong duan
Now In Calcite:
{code:java}
((A IS NOT NULL OR B) AND A) can be simplify to (A){code}
When A is a node representing an input reference or field access.
For example:
{code:java}
(name is null or empid = 1) and name is nul -> name is null{code}
But When A is a deterministic node, It can't reduce.
For example:
(replace(name,'e','a') is not null or replace(name,'a','c') is not null)
and replace(name,'e','a') is not null
Can't be simplify to:
{code:java}
replace(name,'e','a') is not null{code}
This issue originated in CALCITE-4910.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)