public class JobMasterServiceLeadershipRunner extends Object implements JobManagerRunner, LeaderContender
JobMasterServiceProcess.
The responsibility of this component is to manage the leadership of the JobMasterServiceProcess. This means that the runner will create an instance of the process when
it obtains the leadership. The process is stopped once the leadership is revoked.
This component only accepts signals (job result completion, initialization failure) as long as it is running and as long as the signals are coming from the current leader process. This ensures that only the current leader can affect this component.
All leadership operations are serialized. This means that granting the leadership has to complete before the leadership can be revoked and vice versa.
The resultFuture can be completed with the following values: * *
JobManagerRunnerResult to signal an initialization failure of the JobMasterService or the completion of a job
Exception to signal an unexpected failure
| 构造器和说明 |
|---|
JobMasterServiceLeadershipRunner(JobMasterServiceProcessFactory jobMasterServiceProcessFactory,
LeaderElectionService leaderElectionService,
JobResultStore jobResultStore,
LibraryCacheManager.ClassLoaderLease classLoaderLease,
org.apache.flink.runtime.rpc.FatalErrorHandler fatalErrorHandler) |
| 限定符和类型 | 方法和说明 |
|---|---|
CompletableFuture<Acknowledge> |
cancel(org.apache.flink.api.common.time.Time timeout)
Cancels the currently executed job.
|
CompletableFuture<Void> |
closeAsync() |
org.apache.flink.api.common.JobID |
getJobID()
Get the job id of the executed job.
|
CompletableFuture<JobMasterGateway> |
getJobMasterGateway()
Get the
JobMasterGateway of the JobMaster. |
CompletableFuture<JobManagerRunnerResult> |
getResultFuture()
Get the result future of this runner.
|
void |
grantLeadership(UUID leaderSessionID)
Callback method which is called by the
LeaderElectionService upon selecting this
instance as the new leader. |
void |
handleError(Exception exception)
Callback method which is called by
LeaderElectionService in case of an error in the
service thread. |
boolean |
isInitialized()
Flag indicating if the JobManagerRunner has been initialized.
|
CompletableFuture<ExecutionGraphInfo> |
requestJob(org.apache.flink.api.common.time.Time timeout)
Requests the
ExecutionGraphInfo of the executed job. |
CompletableFuture<JobDetails> |
requestJobDetails(org.apache.flink.api.common.time.Time timeout)
Request the details of the executed job.
|
CompletableFuture<org.apache.flink.api.common.JobStatus> |
requestJobStatus(org.apache.flink.api.common.time.Time timeout)
Requests the current job status.
|
void |
revokeLeadership()
Callback method which is called by the
LeaderElectionService upon revoking the
leadership of a former leader. |
void |
start()
Start the execution of the
JobMaster. |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetDescriptionpublic JobMasterServiceLeadershipRunner(JobMasterServiceProcessFactory jobMasterServiceProcessFactory, LeaderElectionService leaderElectionService, JobResultStore jobResultStore, LibraryCacheManager.ClassLoaderLease classLoaderLease, org.apache.flink.runtime.rpc.FatalErrorHandler fatalErrorHandler)
public CompletableFuture<Void> closeAsync()
closeAsync 在接口中 org.apache.flink.util.AutoCloseableAsyncpublic void start()
throws Exception
JobManagerRunnerJobMaster.start 在接口中 JobManagerRunnerException - if the JobMaster cannot be startedpublic CompletableFuture<JobMasterGateway> getJobMasterGateway()
JobManagerRunnerJobMasterGateway of the JobMaster. The future is only completed if
the JobMaster becomes leader.getJobMasterGateway 在接口中 JobManagerRunnerpublic CompletableFuture<JobManagerRunnerResult> getResultFuture()
JobManagerRunnerJobMaster fails. If the
result future is completed exceptionally via JobNotFinishedException, then this
signals that the job has not been completed successfully. All other exceptional completions
denote an unexpected exception which leads to a process restart.getResultFuture 在接口中 JobManagerRunnerpublic org.apache.flink.api.common.JobID getJobID()
JobManagerRunnergetJobID 在接口中 JobManagerRunnerpublic CompletableFuture<Acknowledge> cancel(org.apache.flink.api.common.time.Time timeout)
JobManagerRunnercancel 在接口中 JobManagerRunnertimeout - of this operationpublic CompletableFuture<org.apache.flink.api.common.JobStatus> requestJobStatus(org.apache.flink.api.common.time.Time timeout)
JobManagerRunnerrequestJobStatus 在接口中 JobManagerRunnertimeout - for the rpc callpublic CompletableFuture<JobDetails> requestJobDetails(org.apache.flink.api.common.time.Time timeout)
JobManagerRunnerrequestJobDetails 在接口中 JobManagerRunnertimeout - for the rpc callpublic CompletableFuture<ExecutionGraphInfo> requestJob(org.apache.flink.api.common.time.Time timeout)
JobManagerRunnerExecutionGraphInfo of the executed job.requestJob 在接口中 JobManagerRunnertimeout - for the rpc callExecutionGraphInfo of the executed jobpublic boolean isInitialized()
JobManagerRunnerisInitialized 在接口中 JobManagerRunnerpublic void grantLeadership(UUID leaderSessionID)
LeaderContenderLeaderElectionService upon selecting this
instance as the new leader. The method is called with the new leader session ID.grantLeadership 在接口中 LeaderContenderleaderSessionID - New leader session IDpublic void revokeLeadership()
LeaderContenderLeaderElectionService upon revoking the
leadership of a former leader. This might happen in case that multiple contenders have been
granted leadership.revokeLeadership 在接口中 LeaderContenderpublic void handleError(Exception exception)
LeaderContenderLeaderElectionService in case of an error in the
service thread.handleError 在接口中 LeaderContenderexception - Caught exceptionCopyright © 2014–2022 The Apache Software Foundation. All rights reserved.