You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Danny Chen (Jira)" <ji...@apache.org> on 2020/10/22 11:38:00 UTC

[jira] [Commented] (CALCITE-4225) Make RelDecorrelator pluggable

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

Danny Chen commented on CALCITE-4225:
-------------------------------------

[~julianhyde] Do you think i should put the {{postDecorrelateRules}} into a config ? Or add a method to override like in this PR ?

> Make RelDecorrelator pluggable
> ------------------------------
>
>                 Key: CALCITE-4225
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4225
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.25.0
>            Reporter: Danny Chen
>            Assignee: Danny Chen
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.27.0
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> {{RelDecorrelator}} is our core component that decorrelates the queries. But actually, the pattern it can decorrelate successfully is very limited. And it often causes bug because it decorrelates into a wrong plan (with non-correct sementics).
> When there are bugs there, the downstream project can only wait for the version upgrade (if it is fixed in Calcite master), or they copy the whole Java class and override the Calcite one which is hard to maintain.
> It would be nice if we can make the decorrelation logic pluggable. e.g. we can control how a RelNode was decorrelated(not a coarse-grained flag to turn-on/off the decorrelation).



--
This message was sent by Atlassian Jira
(v8.3.4#803005)