[ 
https://issues.apache.org/jira/browse/CALCITE-7342?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18047123#comment-18047123
 ] 

Mihai Budiu commented on CALCITE-7342:
--------------------------------------

There are two questions:
 * how to run all existing tests to use the new decorrelator
 * how to incrementally migrate to the point where the new decorrelator runs 
all existing tests

The answer to the first question is relatively simple: we can just inherit from 
CoreQuidemTests and create a class which runs all quidem tests with the new 
decorrelator. That is the minimal code change, will have 100% coverage, and it 
will require least work. But this will fail with respect to the second 
criterion, since (1) initially most tests will fail with this approach, and (2) 
some tests will never pass - the ones which dump plans.

I still think this is the better approach, by creating an !if (newDecorrelator) 
in quidem which will disable tests selectively for the new decorrelator. 
Eventually all such ifs will be removed, and the if itself.

> Quidem test support for TopDownGeneralDecorrelator
> --------------------------------------------------
>
>                 Key: CALCITE-7342
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7342
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>    Affects Versions: 1.41.0
>            Reporter: Zhen Chen
>            Assignee: Zhen Chen
>            Priority: Minor
>              Labels: pull-request-available
>
> We recently merged the new TopDownGeneralDecorrelator (CALCITE-7031). 
> Currently, configuration has only been added to RelOptFixture, but end-to-end 
> testing of Calcite cannot be performed using the new Decorrelator. To perform 
> end-to-end testing, we might need a configuration to enable the new 
> Decorrelator (it's disabled by default). This is necessary to advance the 
> further development and validation of the new Decorrelator, such as 
> implementing MARK JOIN in CALCITE-7315 in the future, or assuming the new 
> Decorrelator can truly become a production-ready option for users. All of 
> this requires thorough testing, so this Jira implementation aims to provide a 
> quidem test example that supports the new Decorrelator to support future 
> development. However, this will introduce a configuration parameter to enable 
> the new Decorrelator, which may remain for a considerable period until the 
> new Decorrelator reaches production-ready status.
> The current Jira idea is to provide a dedicated decorrelate.iq file to 
> support continuous iteration.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to