Events triggering JobListener notification

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Events triggering JobListener notification

Barak Ben Nathan

Hi all,

 

I am using Flink 1.12.1

 

I’m building a system that creates/cancels Flink Jobs and monitors them.

 

We thought to use org.apache.flink.core.execution.JobListener as a ‘push’ mechanism for job-status-change events.

 

We based this idea on the documentation that stated that JobListener ‘…is notified on specific job status changed’

 

However,  from the JobListener’s methods ‘onJobSubmitted’, ‘onJobExecuted’, and their documentation, I understand that JobListener is not notified on *all* events.

E.g. :

Job failure (after it running for some time) or Job cancellation, will not cause JobListener to be notified.

 

Am I correct?

 

Barak

 

Reply | Threaded
Open this post in threaded view
|

Re: Events triggering JobListener notification

Arvid Heise-4
Hi Barak,

I think the answer to your question is lies in the javadoc:
/**
* Callback on job execution finished, successfully or unsuccessfully. It is only called back
* when you call {@code execute()} instead of {@code executeAsync()} methods of execution
* environments.
*
* <p>Exactly one of the passed parameters is null, respectively for failure or success.
*/
void onJobExecuted(
@Nullable JobExecutionResult jobExecutionResult, @Nullable Throwable throwable);

So this callback will be invoked even on failure and cancellation.

On Thu, Jun 3, 2021 at 2:38 PM Barak Ben Nathan <[hidden email]> wrote:

Hi all,

 

I am using Flink 1.12.1

 

I’m building a system that creates/cancels Flink Jobs and monitors them.

 

We thought to use org.apache.flink.core.execution.JobListener as a ‘push’ mechanism for job-status-change events.

 

We based this idea on the documentation that stated that JobListener ‘…is notified on specific job status changed’

 

However,  from the JobListener’s methods ‘onJobSubmitted’, ‘onJobExecuted’, and their documentation, I understand that JobListener is not notified on *all* events.

E.g. :

Job failure (after it running for some time) or Job cancellation, will not cause JobListener to be notified.

 

Am I correct?

 

Barak