It is possible to resume a job
resume(). This is called on by the job async executor and resources. The executors provide this method in the event that a job has timed out and won’t respond. Alternatively, the job will fail.
Jobs can be retried (
retry()). This is called on by the job sync, async executors, and resources in the event that Enterprise has retried the job. Job executors may decide to run the
execute() method immediately. It is important to consider different scenarios before executing the job.
As a user you can cancel a job using either the Flex Enterprise UI or REST API.
In a distributed environment with no available transaction options, you need a way to cancel jobs. This is especially important when a job is not found in the architecture.
In the case of JEF, Redis is used as a shared repository in order to mark jobs that are being cancelled.
A job can be cancelled while it is in a QUEUED state in JEF. A job can also be cancelled while RUNNING in a job async executor when executing a job.
cancel() method is called on by the job async executor and resources if Enterprise has requested to cancel the job. The job executor might decide to ignore or not implement this interface. If so, the job can’t be cancelled.