Jacques,
Do you recall why you added the line
.addRuleInstance(PushFilterPastJoinRule.FILTER_ON_JOIN)
in RelDecorrelator.removeCorrelationViaRule? When the rule fires, the resultant
RelNodes are not registered in the decorrelator's intricate mapping, and
therefore decorrelation fails. (There is some complicated logic involving
copy-hooks but they don't seem to apply here.)
If I remove that line, https://issues.apache.org/jira/browse/OPTIQ-313 is
magically fixed and nothing else in the test suite breaks.
I plan to check in the change removing that line shortly. Maybe you can provide
a test case illustrating why that line is necessary.
Julian