[
https://issues.apache.org/jira/browse/FLINK-34704?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17836037#comment-17836037
]
Piotr Nowojski commented on FLINK-34704:
----------------------------------------
{code:java}
So it is designed to be safe to checkpoint during waiting async results (during
yield). This operator is the only one that allow for checkpoint in middle of
waiting.
{code}
Yes and no. It can be checkpointed with in-flight requests, but it can not be
checkpointed while it is calling {{.yield()}} anywhere in it's own code, due to
the state corruption/inconsistency issue I described above. So the solution is
not to let subtask checkpoint while {{AsyncWaitOperator}} is calling
{{.yield()}}, but {{StreamTask}} should prioritize taking a checkpoint over
processing {{AWOPs}} mails that are already enqueued.
> Process checkpoint barrier in AsyncWaitOperator when the element queue is full
> ------------------------------------------------------------------------------
>
> Key: FLINK-34704
> URL: https://issues.apache.org/jira/browse/FLINK-34704
> Project: Flink
> Issue Type: Improvement
> Components: Runtime / Task
> Reporter: Zakelly Lan
> Priority: Minor
>
> As discussed in
> https://lists.apache.org/thread/4f7ywn29kdv4302j2rq3fkxc6pc8myr2 . Maybe it
> is better to provide such a new `yield` that can process mail with low
> priority in the mailbox executor. More discussion needed.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)