GitHub user tillrohrmann opened a pull request:
https://github.com/apache/flink/pull/5430
[FLINK-8605] [rest] Enable job cancellation from the web UI
## What is the purpose of the change
In order to support the job cancellation from the web UI, including when
using
Yarn, we have to register the JobTerminationHandler under
/jobs/:jobid/yarn-cancel
and /jobs/:jobid/yarn-stop. This is just a temporary fix until we can send
arbitrary REST verbs through the Yarn proxy.
## Brief change log
- Introduce `YarnCancelJobTerminationHeaders`
- Introduce `YarnStopJobTerminationHeaders`
- Register `JobTerminationHandler` with default `TerminationMode#CANCEL`
under `YarnCancelJobTerminationHeaders`
- Register `JobTerminationHandler` with default `TerminationMode#STOP`
under `YarnStopJobTerminationHeaders`
## Verifying this change
- Added `YarnCancelJobTerminationHeadersTest` and
`YarnStopJobTerminationHeadersTest`
- Tested manually
## Does this pull request potentially affect one of the following parts:
- Dependencies (does it add or upgrade a dependency): (no)
- The public API, i.e., is any changed class annotated with
`@Public(Evolving)`: (no)
- The serializers: (no)
- The runtime per-record code paths (performance sensitive): (no)
- Anything that affects deployment or recovery: JobManager (and its
components), Checkpointing, Yarn/Mesos, ZooKeeper: (no)
- The S3 file system connector: (no)
## Documentation
- Does this pull request introduce a new feature? (no)
- If yes, how is the feature documented? (not applicable)
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/tillrohrmann/flink enableWebJobCancellation
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/5430.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #5430
----
commit 216876ae1d3fd0509bd5591576d9d4c960c1aa80
Author: Till Rohrmann <trohrmann@...>
Date: 2018-02-06T18:11:53Z
[hotfix] Change shutdown order in WebMonitorEndpoint to avoid illegal state
commit f906423456b0f42c46213584b91d7c75321289c5
Author: Till Rohrmann <trohrmann@...>
Date: 2018-02-08T12:43:09Z
[FLINK-8604] [rest] Move JobTerminationHandler into WebMonitorEndpoint
Register the JobTerminationHandler at the WebMonitorEndpoint to make it
accessible to
all REST endpoints.
commit e5a80cc4a2c676c08de65cc1d68c2e4937b5f499
Author: Till Rohrmann <trohrmann@...>
Date: 2018-02-07T11:35:58Z
[FLINK-8605] [rest] Enable job cancellation from the web UI
In order to support the job cancellation from the web UI, including when
using
Yarn, we have to register the JobTerminationHandler under
/jobs/:jobid/yarn-cancel
and /jobs/:jobid/yarn-stop. This is just a temporary fix until we can send
arbitrary REST verbs through the Yarn proxy.
----
---