gvvinblade commented on a change in pull request #8380:
URL: https://github.com/apache/ignite/pull/8380#discussion_r511111879
##########
File path:
modules/calcite/src/main/java/org/apache/ignite/internal/processors/query/calcite/rule/logical/LogicalOrToUnionRule.java
##########
@@ -63,7 +61,7 @@ private LogicalOrToUnionRule(Class<LogicalFilter> clazz,
String desc) {
List<RexNode> operands = RelOptUtil.disjunctions(dnf);
- if (operands.size() != 2)
+ if (operands.size() != 2 ||
RexUtil.find(SqlKind.IS_NULL).anyContain(operands))
Review comment:
this fix isn't the best one, but we need a way to detect somehow a
filter what is a result of previous rule call, otherwise we'll have infinity
rule match queue. And I have no idea how we would write a specific test for it
(a planer plans a query in finite number of steps, it means a condition works)
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[email protected]