apache-flinkflink-streamingdynamic-class-loaders

Apache Flink: How can I reload an updated jar without restarting my job?


My Flink job has a jar file provided by the client, which I can store in /lib folder. Is there a way to reload the updated jar file, without restarting the cluster?


Solution

  • No, that is not possible with the current version (Flink 1.4.0, Dec 2017).

    Flink offers savepoints to save the state of an application. If you want to change the code (or dependencies) of an application, zou have to take a savepoint, update the code/dependencies, and restart the application from the savepoint.

    This technique can also be used to scale an application up or down or to migrate it.