Hi Yangze, Thanks for driving this. I like the idea to separate the current HighAvailabilityServices into LeaderServices and PersistentServices. AFAIK, there is no need to bind JobGraphStore/JobResultStore/BlobStore/CheckpointStore modules with LeaderElection/LeaderRetrieval services. The formers are mainly used to store the job related metadata while the latter is designed to distinguish the current working jobmanager and standby jobmanager.
I have one question for this, will this FLIP change the leader path or job path stored in the HighAvailabilityServices? If user is upgrading a Flink job from using current HighAvailabilityServices, will there be any compatibility issues, do we need any data migration? Thx, Xiangyu