[ 
https://issues.apache.org/jira/browse/FLINK-27204?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17707901#comment-17707901
 ] 

Wencong Liu commented on FLINK-27204:
-------------------------------------

I prepare to modify the return value of three methods in JobResultStore, like 
this
{code:java}
public interface JobResultStore2 {
    void createDirtyResult(JobResultEntry jobResultEntry) throws IOException, 
IllegalStateException;
    void markResultAsClean(JobID jobId) throws IOException, 
NoSuchElementException;
    default boolean hasJobResultEntry(JobID jobId) throws IOException{};
    CompletedFuture<Boolean> hasDirtyJobResultEntry(JobID jobId) throws 
IOException;
    CompletedFuture<Boolean> hasCleanJobResultEntry(JobID jobId) throws 
IOException;
    CompletedFuture<Set<JobResult>> getDirtyResults() throws IOException;
} {code}
WDYT? [~mapohl] 

> FileSystemJobResultStore should operator on the ioExecutor
> ----------------------------------------------------------
>
>                 Key: FLINK-27204
>                 URL: https://issues.apache.org/jira/browse/FLINK-27204
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / Coordination
>    Affects Versions: 1.16.0
>            Reporter: Matthias Pohl
>            Assignee: Wencong Liu
>            Priority: Major
>
> The {{JobResultStore}} interface is synchronous currently. For the 
> {{FileSystemJobResultStore}} this means that (possibly) IO-heavy operations 
> have to be explicitly called moved to the ioExecutor within the Dispatcher.
> Instead, we could change the {{JobResultStore}} interface in a way that it 
> returns {{CompletableFuture}} instances instead. That would enable us to run 
> the {{FileSystemJobResultStore}} operations in the ioExecutor which would be 
> set when initializing the {{{}FileSystemJobResultStore{}}}. This would move 
> the responsibility of where to run the operation from the {{Dispatcher}} into 
> the {{JobResultStore.}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to