Jark Wu created FLINK-18555:
-------------------------------
Summary: Make TableConfig options can be configured by string-based Configuration
Key: FLINK-18555
URL:
https://issues.apache.org/jira/browse/FLINK-18555 Project: Flink
Issue Type: Sub-task
Components: Table SQL / API
Reporter: Jark Wu
Assignee: Shengkai Fang
Fix For: 1.12.0
TableConfig should fully rely on a Configuration-based object with ConfigOptions. So that it can be configured using string-based configuration, such as from a configuration file or SQL CLI SET command.
[~jark], [~twalthr], and [~fhueske] discussed the configuration options (see comments in FLINK-16835) and concluded with the following design:
{code:java}
public static final ConfigOption<Duration> IDLE_STATE_RETENTION =
key("table.exec.state.ttl")
.durationType()
.defaultValue(Duration.ofMillis(0));
public static final ConfigOption<Integer> MAX_LENGTH_GENERATED_CODE =
key("table.generated-code.max-length")
.intType()
.defaultValue(64000);
public static final ConfigOption<String> LOCAL_TIME_ZONE =
key("table.local-time-zone")
.stringType()
.defaultValue(ZoneId.systemDefault().toString());
{code}
*Note*: The following {{TableConfig}} options are not preserved:
* {{nullCheck}}: Flink will automatically enable null checks based on the table schema ({{NOT NULL}} property)
* {{decimalContext}}: this configuration is only used by the legacy planner which will be removed in one of the next releases
* {{maxIdleStateRetention}}: is automatically derived as 1.5* {{idleStateRetention}} until StateTtlConfig is fully supported (at which point only a single parameter is required).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)