Hi all, I'd like to start a discussion of FLIP-391: Deprecate RuntimeContext#getExecutionConfig[1].
Currently, the FLINK RuntimeContext is important for connecting user functions to the underlying runtime details. It provides users with necessary runtime information during job execution. However, he current implementation of the FLINK RuntimeContext exposes the ExecutionConfig to users, resulting in two issues: Firstly, the ExecutionConfig contains much unrelated information that can confuse users and complicate management. Secondly, exposing the ExecutionConfig allows users to modify it during job execution, which can cause inconsistencies and problems, especially with operator chaining. Therefore, we propose deprecating the RuntimeContext#getExecutionConfig in the FLINK RuntimeContext. In the upcoming FLINK-2.0 version, we plan to completely remove the RuntimeContext#getExecutionConfig method. Instead, we will introduce alternative getter methods that enable users to access specific information without exposing unnecessary runtime details. These getter methods will include: 1. @PublicEvolving <T> TypeSerializer<T> createSerializer(TypeInformation<T> typeInformation); 2. @PublicEvolving Map<String, String> getGlobalJobParameters(); 3. @PublicEvolving boolean isObjectReuseEnabled(); Looking forward to your feedback and suggestions, thanks. [1] https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=278465937 Best regards, Junrui