Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Furthermore, the approaches used to configure these components are different, with some configurations using complex Java objects while others use ConfigOption, which is a key-value configuration approach. This makes it difficult to effectively manage job configuration. For example, validating non-ConfigOption job configuration is challenging, as seen in StreamContextEnvironment#checkCheckpointConfig.  Additionally, passing complex Java objects (e.g., state backend and checkpoint storage) between the environment, streamGraph, and jobGraph adds complexity to development.

...

Class

Fields or Methods

Annotation

org.apache.flink.streaming.api.environment.StreamExecutionEnvironment

setStateBackend(StateBackend backend)

@Public

getStateBackend()

defaultStateBackend

Suggested alternative:  Users can configure Users can configure "state.backend.type"  in the configuration as the fully qualified name of the state backend or use some FLINK-provided state backend shortcut names such as in the configuration as the fully qualified name of the state backend or use some FLINK-provided state backend shortcut names such as "hashmap"  and and "rocksdb",  and provide the necessary configuration options for building that StateBackend, instead of passing a StateBackend objectand provide the necessary configuration options for building that StateBackend, instead of passing a StateBackend object.

Proposed Changes

We propose deprecating the classes/methods mentioned above and updating the documentation from the Flink website.

...