Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
Description
In theory, introducing a new attribute in ExecNode requires upgrading the version of ExecNodeMetadata. However, since this is currently an experimental feature, the attributes that need to be serialized for the final exec node are still being iterated, and upgrading the version will make the serialization scheme of the lower version become immutable (unless a patch is applied to the old version), and the testing framework is not perfect either. Therefore, upgrading the ExecNode version is not necessary if state compatibility can be maintained at the implementation level.
It should be okay to roll back ExecNodeMetadata to version 1 because compatibility handling is enabled at the code level.
Long-term we need a larger testing framework, per-Flink and per-ExecNode version that validates all attributes.