[
https://issues.apache.org/jira/browse/FLINK-26190?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Marios Trivyzas updated FLINK-26190:
------------------------------------
Description:
Currently, *ExecNodeConfig* holds *TableConfig* instead of *ReadableConfig* for
the configuration coming from the planner, because it's used by
*CommonPythonUtil#getMergedConfig.* This should be fixed, so that
*CommonPythonUtil#getMergedConfig* cam use a *ReadableConfig* instead, and then
we can pass the *ExecNodeConfig* which holds the complete view of
{*}Planner{*}'s *TableConfig* + the {*}ExecNode{*}'s {*}persistedConfig{*}.
To achieve that the *getMergedConfig* methods of *PythonConfigUtil* must be
changed, and also the temp solution in
*PythonFunctionFactory#getPythonFunction* must be changed as well:
{noformat}
if (config instanceof TableConfig) {
PythonDependencyUtils.merge(mergedConfig, ((TableConfig)
config).getConfiguration());
} else {
PythonDependencyUtils.merge(mergedConfig, (Configuration) config);
}{noformat}
was:
Currently, *ExecNodeConfiguration* holds *TableConfig* on top of the
*plannerConfig* and the *persistedConfig,* since it's needed by the
*CodeGeneratorContext* basically for the {*}nullCheck{*}.
The *nullCheck* should be deprecated and removed which will facilitate the
usage of the simple iface: *ReadableConfig* in *CodeGeneratorContext* **
instead of *TableConfig* and the *TableConfig* could be removed
> Remove getTableConfig from ExecNodeConfiguration
> ------------------------------------------------
>
> Key: FLINK-26190
> URL: https://issues.apache.org/jira/browse/FLINK-26190
> Project: Flink
> Issue Type: Sub-task
> Components: Table SQL / Planner
> Reporter: Marios Trivyzas
> Priority: Major
>
> Currently, *ExecNodeConfig* holds *TableConfig* instead of *ReadableConfig*
> for the configuration coming from the planner, because it's used by
> *CommonPythonUtil#getMergedConfig.* This should be fixed, so that
> *CommonPythonUtil#getMergedConfig* cam use a *ReadableConfig* instead, and
> then we can pass the *ExecNodeConfig* which holds the complete view of
> {*}Planner{*}'s *TableConfig* + the {*}ExecNode{*}'s {*}persistedConfig{*}.
>
> To achieve that the *getMergedConfig* methods of *PythonConfigUtil* must be
> changed, and also the temp solution in
> *PythonFunctionFactory#getPythonFunction* must be changed as well:
> {noformat}
> if (config instanceof TableConfig) {
> PythonDependencyUtils.merge(mergedConfig, ((TableConfig)
> config).getConfiguration());
> } else {
> PythonDependencyUtils.merge(mergedConfig, (Configuration) config);
> }{noformat}
--
This message was sent by Atlassian Jira
(v8.20.1#820001)