zentol commented on a change in pull request #18749:
URL: https://github.com/apache/flink/pull/18749#discussion_r807108263
##########
File path:
flink-runtime/src/main/java/org/apache/flink/runtime/dispatcher/cleanup/LocallyCleanableResource.java
##########
@@ -24,12 +24,11 @@
import java.util.concurrent.Executor;
/**
- * {@code LocallyCleanableResource} is supposed to be used by any class that
provides artifacts for
- * a given job that can be cleaned up locally. Artifacts considered to be
local are located on the
- * JobManager instance itself and won't survive a failover scenario. These
artifacts are, in
- * contrast to {@link GloballyCleanableResource} artifacts, going to be
cleaned up even after the
- * job reaches a locally-terminated state.
+ * {@code LocallyCleanableResource} is supposed to be implemented by any class
that provides
+ * artifacts for a given job that need to be cleaned up after the job reached
a local terminal
Review comment:
I'm not too fond of the phrasing because it contradicts what we're doing
in this PR.
The JMMG cleanup "_needs to be triggered for a global terminal state as
well_", but does _not_ implement `GloballyCleanableResource`.
I'd rather mention that local resources should be wrapped like in the
DispatcherResourceCleanerFactory to ensure they are also called for global
terminal jobs.
Then we should file a follow-up ticket to clean this up such that every
LocallyCleanableResource is automatically cleaned up on a globally terminal
state. A simple approach for that could be to introduce a parent interface
containing both cleanup definitions; The Local interface has a default global
impl that calls the local cleanup; the Global interface has a default local
impl that doesn't do anything.
Then we adjust all data-structures to work against the parent, and call the
respective method as needed based on the terminal state.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]