Github user dawidwys commented on the pull request: https://github.com/apache/flink/pull/1981#issuecomment-221901395 I am not sure if you've seen my comment(due it was to some previous commit version). Let me paste my doubts about CNF one more time: > I am not sure if the normalization to CNF is necessary. Calcite does not do it, but searches just the AND operators subtrees for equi conditions. E.g. For condition (l.a = r.b AND l.c =r.d) OR (l.a = r.b AND l.e = r.f) after transformation to CNF it will be possible to find equi condition, but Calcite is not finding it (see RelOptUtil#splitJoinCondition) and results in failing DataSet join. > > My proposition would be: > > traverse whole tree(both OR and AND branches) checking if only join-conditions exists > check if equi-condition exists in AND branch
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---