I would expect more external dependencies on the REST API and suggest to
consider versioning and compatibility guarantees.
The particular issue is from Beam and tracked here:
I would be surprised if that is the only instance besides Flink CLI
to use the REST API for job submission. In the case of Beam, it is
problematic to assume that the job service that contains the Flink
will always be upgraded lock step with the server.
What other factors prevent interoperability between Flink versions?
be possible to submit a job graph built by 1.5.1 client (that does not
contain any connectors or operators that depend on internal API) to
On Tue, Jul 24, 2018 at 7:58 AM Chesnay Schepler <chesnay@xxxxxxxxxx>
Effectively there are no guarantees for backwards compatibility,
although we try to maintain it.
There are plans to version the REST API
(https://issues.apache.org/jira/browse/FLINK-7551) but no definitive
The change you mentioned in particular primarily affects internal code
(since the removed endpoint is usually only used by the flink CLI).
Note we do not provide any guarantee that Flink components interact
properly if the versions don't exactly match, so you should always
the clients anyway.
On 24.07.2018 16:43, Thomas Weise wrote:
Are there any compatibility guarantees for the Flink REST API or
establish the same?
I'm asking since I noticed that the 1.5.1 release has an incompatible
change that prevents a 1.5.0 client to submit a job to 1.5.0 server
(FLINK-9280, removed endpoint /blobserver/port).
Such change is especially unexpected in a patch release, but even
in 1.6.x, it is still problematic because it forces clients to