Github user beyond1920 commented on a diff in the pull request: https://github.com/apache/flink/pull/2389#discussion_r75789279 --- Diff: flink-runtime/src/main/java/org/apache/flink/runtime/rpc/resourcemanager/ResourceManager.java --- @@ -52,18 +61,45 @@ public class ResourceManager extends RpcEndpoint<ResourceManagerGateway> { private final ExecutionContext executionContext; private final Map<JobMasterGateway, InstanceID> jobMasterGateways; + private final Map<ResourceID, TaskExecutorGateway> taskExecutorGateways; + private final Map<ResourceID, ResourceManagerToTaskExecutorHeartbeatScheduler> heartbeatSchedulers; + private final LeaderElectionService leaderElectionService; + private UUID leaderSessionID; + // TODO private final SlotManager slotManager; - public ResourceManager(RpcService rpcService, ExecutorService executorService) { + public ResourceManager(RpcService rpcService, ExecutorService executorService, LeaderElectionService leaderElectionService) { super(rpcService); this.executionContext = ExecutionContext$.MODULE$.fromExecutor( Preconditions.checkNotNull(executorService)); this.jobMasterGateways = new HashMap<>(); + this.taskExecutorGateways = new HashMap<>(); + this.heartbeatSchedulers = new HashMap<>(); + this.leaderElectionService = leaderElectionService; + leaderSessionID = null; + // TODO this.slotManager = null; + } + + @Override + public void start() { + // start a leader + try { + leaderElectionService.start(new ResourceManagerLeaderContender()); + super.start(); + } catch (Exception e) { + log.error("a fatal error happened when start resourceManager", e); --- End diff -- ok
--- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---