Jark Wu created FLINK-31368:
-------------------------------
Summary: Move operation execution logic out from
TableEnvironmentImpl
Key: FLINK-31368
URL: https://issues.apache.org/jira/browse/FLINK-31368
Project: Flink
Issue Type: Technical Debt
Components: Table SQL / Planner
Reporter: Jark Wu
Currently, {{TableEnvironmentImpl}} is a bit bloated. The implementation of
{{TableEnvironmentImpl}} is filled with lots of operation execution logic which
makes the class hard to read and maintain. Once you want to add/update an
operation, you have to touch the {{TableEnvironmentImpl}}, which is unnecessary
and not clean.
An improvement idea is to extract the operation execution logic (mainly the
command operation, which doesn't trigger a Flink job) out from
{{TableEnvironmentImpl}} and put it close to the corresponding operation. This
is how Spark does with {{RunnableCommand}} and {{V2CommandExec}}. In this way,
we only need to add a new class of {{Operation}} without modifying
{{TableEnvironmentImpl}} to support a new command.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)