[ 
https://issues.apache.org/jira/browse/FLINK-40080?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated FLINK-40080:
-----------------------------------
    Labels: pull-request-available  (was: )

> Drain spilled channel state into input channels and replay spilled slices 
> into checkpoints
> ------------------------------------------------------------------------------------------
>
>                 Key: FLINK-40080
>                 URL: https://issues.apache.org/jira/browse/FLINK-40080
>             Project: Flink
>          Issue Type: Sub-task
>          Components: Runtime / Checkpointing
>            Reporter: Rui Fan
>            Assignee: Rui Fan
>            Priority: Major
>              Labels: pull-request-available
>
> The disk-side counterpart of the recovery-checkpoint coordination. Runtime 
> behavior is unchanged — no production path constructs a drainer, and the 
> handler factory does not select the spilling handlers.
> Scope:
>  * RecoveryCheckpointTrigger#snapshotAndInsertBarriers widened to return a 
> FetchedChannelStateReader: checkpoint start atomically snapshots the 
> not-yet-drained spill slice and inserts recovery barriers.
>  * ChannelStateWriter#addInputDataFromSpill: the channel-state writer replays 
> a spilled slice into the checkpoint 
> (ChannelStateWriteRequest.replayInputDataFromSpill, 
> ChannelStateCheckpointWriter.writeInputFromSpill, streaming serializer 
> overload); reader ownership transfers to the writer, closed on cancel/failure.
>  * ChannelState checkpoint-start dispatch gains step 3: hand the snapshot 
> reader to the writer; failure path closes the snapshot and routes 
> CheckpointException to abort.
>  * FetchedChannelStateDrainer: incremental drain of spill segments into 
> RecoverableInputChannels (buffer request + disk read outside the lock, 
> delivery + offset advance inside), implementing the trigger with atomic 
> snapshot-and-insert; appends the end-of-recovery sentinels when the drain 
> finishes.



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

Reply via email to