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

Junfan Zhang commented on FLINK-17808:
--------------------------------------

[~yunta] 
As Stephan mentioned above, i also think the first one is the better option.

So we could use the {{RecoverableFsDataOutputStream}} close and commit to 
ensure the writing file atomicity instead of using the {{FSDataOutputStream}} 
in {{FsCheckpointMetadataOutputStream}}. Right?

Please let me know what u think.

> Rename checkpoint meta file to "_metadata" until it has completed writing
> -------------------------------------------------------------------------
>
>                 Key: FLINK-17808
>                 URL: https://issues.apache.org/jira/browse/FLINK-17808
>             Project: Flink
>          Issue Type: Improvement
>          Components: Runtime / Checkpointing
>    Affects Versions: 1.10.0
>            Reporter: Yun Tang
>            Priority: Minor
>              Labels: auto-deprioritized-major, pull-request-available
>             Fix For: 1.15.0
>
>
> In practice, some developers or customers would use some strategy to find the 
> recent _metadata as the checkpoint to recover (e.g as many proposals in 
> FLINK-9043 suggest). However, there existed a "_meatadata" file does not mean 
> the checkpoint have been completed as the writing to create the "_meatadata" 
> file could break as some force quit (e.g. yarn application -kill).
> We could create the checkpoint meta stream to write data to file named as 
> "_metadata.inprogress" and renamed it to "_metadata" once completed writing. 
> By doing so, we could ensure the "_metadata" is not broken.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to