[
https://issues.apache.org/jira/browse/FLINK-7072?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16182370#comment-16182370
]
ASF GitHub Bot commented on FLINK-7072:
---------------------------------------
GitHub user zentol opened a pull request:
https://github.com/apache/flink/pull/4730
[hotfix] [REST] Various rest-related hotfixes
This PR is based on #4700.
## What is the purpose of the change
This PR contains a number of smaller changes that i made while working on
FLINK-7072, which are however not really related to it, so I decided to
front-load them instead.
## Brief change log
* modify the existing `EmptyRequestBody` class to be a singleton
* add QoL variations of `RestClient#sendRequest` for empty
requests/parameters
* add PATCH http method wrapper
* Fix the error message when a GET message could not mapped to the
respective RequestBody. This now properly returns BAD_REQUEST instead of
INTERNAL_SERVER_ERROR.
* Add a special case to the `RestClient` for reading plain-text responses,
which previously failed with cryptic json parsing exceptions.
## Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/zentol/flink 7072_hotfixes
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/4730.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 #4730
----
commit ed2d5482c315d64216e4a645b68e7b48dfb89456
Author: Till Rohrmann <[email protected]>
Date: 2017-09-21T08:53:24Z
[FLINK-7650] [flip6] Port JobCancellationHandler to new REST endpoint
Let the JobCancellationHandler implement the LegacyRestHandler interface.
Moreover,
this commit adds the DELETE method to HttpMethodWrapper and the
RestServerEndpoint#registerHandler method.
commit e83065fa8102c10a10cdc981f0c7608577c20c34
Author: Till Rohrmann <[email protected]>
Date: 2017-09-21T14:47:18Z
[FLINK-7649] [flip6] Extend JobTerminationHandler to support stop
Rename the JobCancellationHandler into JobTerminationHandler which is now
responsible
for terminating jobs. Moreover, this commits adds two termination modes,
cancel and stop,
which are specified by providing a query parameter.
commit cf0bd2785c1aa685ca1835188bda9042643ac9bd
Author: zentol <[email protected]>
Date: 2017-09-20T12:52:56Z
[hotfix] [REST] Extend empty request/parameters support
commit 09c93f0c298bee48d58d6a16396572f3fc47b8d2
Author: zentol <[email protected]>
Date: 2017-09-20T12:56:13Z
[hotfix] [REST] Add PATCH HttpMethodWrapper
commit 3910bd025bde8e1c24f61e6fd7e965410787afbc
Author: zentol <[email protected]>
Date: 2017-09-20T12:57:56Z
[hotfix] [REST] Fix error message if empty request does not conform to
RequestBody spec
commit 83f3055eed8abbde31d222a15286e3634f2b4c70
Author: zentol <[email protected]>
Date: 2017-09-20T13:00:01Z
[hotfix] [REST] Add special handling for plain-text responses
----
> Create RESTful cluster endpoint
> -------------------------------
>
> Key: FLINK-7072
> URL: https://issues.apache.org/jira/browse/FLINK-7072
> Project: Flink
> Issue Type: Sub-task
> Components: Distributed Coordination
> Reporter: Till Rohrmann
> Assignee: Chesnay Schepler
> Labels: flip-6
> Fix For: 1.4.0
>
>
> In order to communicate with the cluster from the RESTful client, we have to
> implement a RESTful cluster endpoint. The endpoint shall support the
> following operations:
> * List jobs (GET): Get list of all running jobs on the cluster
> * Submit job (POST): Submit a job to the cluster (only supported in session
> mode)
> * Get job status (GET): Get the status of an executed job (and maybe the
> JobExecutionResult)
> * Lookup job leader (GET): Gets the JM leader for the given job
> This endpoint will run in session mode alongside the dispatcher/session
> runner and forward calls to this component which maintains a view on all
> currently executed jobs.
> In the per-job mode, the endpoint will return only the single running job and
> the address of the JobManager alongside which it is running. Furthermore, it
> won't accept job submissions.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)