Github user senorcarbone commented on the issue:

    https://github.com/apache/flink/pull/1668
  
    Working on it atm . I decided to make the following optimisations but want 
to very quickly make sure that async checkpointing works the way I believe it 
does:
    - Most importantly, I am changing the iteration head to always forward 
records. Their effects are not present in any in-progress snapshot anyway so 
that I should had done from the very beginning. :)
    - If `ListState` is checkpointed asynchronously, depending on the backend I 
suppose, then the current version of it, during the snapshot, will be persisted 
as a copy, which means that we can apply mutations right away and therefore 
reset it right after invoking the snapshot to the beginning of the next 
in-progress snapshot (some indexing involved). That way we do not need to open 
new ListStates in the first place. Does this make sense?
    
    @StephanEwen Please correct me if I am wrong, regarding the second point. I 
am just not very familiar with async snapshotting for `ListState` (this is not 
clear in the documentation for me). Mind also that I do not use the 
`CheckpointedAsychronously` interface, it seems to be heading towards 
deprecation. Thanks!


---
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 infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to