godfrey he created FLINK-20879:
----------------------------------
Summary: Use MemorySize type instead of String type for memory
ConfigOption in ExecutionConfigOptions
Key: FLINK-20879
URL: https://issues.apache.org/jira/browse/FLINK-20879
Project: Flink
Issue Type: Improvement
Components: Table SQL / API
Reporter: godfrey he
Fix For: 1.13.0
Currently, There are memory {{ConfigOption}}s in {{ExecutionConfigOptions}}
such as {{table.exec.resource.external-buffer-memory}},
{{table.exec.resource.hash-agg.memory}}. They are all {{String}} type now.
While when we need to get the memory size value, the String value should be
converted to {{MemorySize}} type and then getting bytes value. Code likes:
{code:java}
val memoryBytes = MemorySize.parse(config.getConfiguration.getString(
ExecutionConfigOptions.TABLE_EXEC_RESOURCE_HASH_AGG_MEMORY)).getBytes
{code}
The above code can be simplified if we change the {{ConfigOption}} type from
{{String}} to {{MemorySize}} type. Many runtime {{ConfigOption}}s also use
{{MemorySize}} type to define memory config. So I suggest we use {{MemorySize}}
type instead of {{String}} type for memory {{ConfigOption}} in
{{ExecutionConfigOptions}}.
Note: this is an incompatible change.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)