[ 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)