Github user uce commented on the issue:
https://github.com/apache/flink/pull/2083
I've addressed the comments:
- Moved the JAR uploading to a helper:
```java
// Retrieve blob server address and upload JARs to server
uploadJarFiles(ActorGateway, FiniteDuration, List<Path>);
// Upload JARs to server
uploadJarFiles(InetSocketAddress, List<Path>);
```
I did not remove the `JobGraph` upload JARs method, but it now calls
these helpers. I decided against removing it, because it's called in multiple
places with the same pattern (upload, get BLOB keys, set BLOB keys).
- I extract the libraries as you suggested (no need for the job graph now)
- Removed the job ID variant as it was overloading disposal too much and
just stuck to the JAR variant, which is now optional (no script API break)
- State disposal errors are now propagated and the a failed disposal with
`ClassNotFoundException` gives a hint to provide the JAR file
- I've added an automated test with custom KV state in `ClassLoaderITCase`
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---