silundong opened a new pull request, #4806: URL: https://github.com/apache/calcite/pull/4806
In fact, this issue is unrelated to the new decorrelation algorithm. In `TopDownGeneralDecorrelator`, there is preprocessing and postprocessing around decorrelation, and both of these use the `FILTER_PROJECT_TRANSPOSE` rule. For the test case mentioned in the JIRA issue, the `Filter` is pushed down under a `Project` that contains a `V2M` expression, which produces an incorrect result; if the `FILTER_PROJECT_TRANSPOSE` rule is removed, the result is correct. I am not familiar with the measure features, and it seems to be a special syntax feature. Considering the following points: - The preprocessing and postprocessing in `TopDownGeneralDecorrelator` do require the `FILTER_PROJECT_TRANSPOSE` rule. - I am not sure whether the `FILTER_PROJECT_TRANSPOSE` rule should avoid the `Project` that contains `V2M`. I observed that some test cases in measure.iq are still wrapped in `!if (false)`, which suggests the related functionality still needs further work. I temporarily modified `CoreQuidemTest2` to skip this test in measure.iq. -- 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. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
