JunRuiLee commented on code in PR #23758: URL: https://github.com/apache/flink/pull/23758#discussion_r1400089782
########## flink-streaming-java/src/main/java/org/apache/flink/streaming/api/environment/CheckpointConfig.java: ########## @@ -759,9 +765,15 @@ public void setCheckpointStorage(CheckpointStorage storage) { * Configures the application to write out checkpoint snapshots to the configured directory. See * {@link FileSystemCheckpointStorage} for more details on checkpointing to a file system. * + * @deprecated The method is marked as deprecated because starting from Flink 1.19, the usage of + * all complex Java objects related to configuration, including their getter and setter + * methods, should be replaced by ConfigOption. In a future major version of Flink, this Review Comment: The ultimate goal we want to achieve is to converge all configurations into Configuration and represent them using ConfigOption. CheckpointConfig or ExecutionConfig classes, in my view, are simply utility classes for manipulating Configuration. The getter/setter methods of these classes essentially operate on the underlying Configuration object. Therefore, we allow users to configure using objects that can be parsed into corresponding ConfigOption stack (currently only supports basic data types, enumeration classes, MemorySize, Duration, and their collection classes) through these utility classes (for easier usage), and also allow them to configure using the corresponding ConfigOption. However, for complex Java objects that cannot be directly parsed into corresponding ConfigOption objects, which is what we want to deprecate this time, users must use ConfigOption for configuration. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@flink.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org