[ 
https://issues.apache.org/jira/browse/FLINK-20319?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Fabian Hueske updated FLINK-20319:
----------------------------------
    Component/s: Table SQL / Planner

> Improving the visitor pattern for operations
> --------------------------------------------
>
>                 Key: FLINK-20319
>                 URL: https://issues.apache.org/jira/browse/FLINK-20319
>             Project: Flink
>          Issue Type: Improvement
>          Components: Table SQL / Planner
>    Affects Versions: 1.11.2
>            Reporter: Ingo Bürk
>            Priority: Minor
>
> The *OperationVisitor interfaces (which are not public API) don't always 
> implement the visitor pattern correctly, and some things which would be 
> useful are missing. Some things I discovered:
>  # CatalogSinkModifyOperation doesn't accept() its child. It's likely that 
> others have this problem as well, but I haven't checked further.
>  # The base Operation interface doesn't have an accept() method at all. 
> Potentially intentional since this interface actually is public API?
>  # There's a catch-all QueryOperationVisitor#visit(QueryOperation other) that 
> would be nice to split up into its subtypes (PlannerQueryOperation, …)



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

Reply via email to