You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2018/11/07 15:51:00 UTC

[jira] [Commented] (FLINK-10522) Check if RecoverableWriter supportsResume and act accordingly.

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

ASF GitHub Bot commented on FLINK-10522:
----------------------------------------

kl0u opened a new pull request #7047: [FLINK-10522] Check if RecoverableWriter supportsResume() and act accordingly.
URL: https://github.com/apache/flink/pull/7047
 
 
   ## What is the purpose of the change
   
   So far, the `StreamingFileSink` was always resuming when recovering from a checkpoint. This is a valid approach, as all implementation of a `RecoverableWriter` support resume.
   
   Given that the `RecoverableWriter` also allows to query if the writer supports resuming or not, and that in the future we may introduce writers that do not support resume (e.g. Hadoop versions that do not allow `truncate`) this PR leverages this method and depending on the outcome either resumes writing to the pre-failure in-progress file, or it simply commits the file and opens a new in-progress one.
   
   
   ## Verifying this change
   
   Added unit tests under the `BucketTest` class. 
   
   ## Does this pull request potentially affect one of the following parts:
   
     - Dependencies (does it add or upgrade a dependency): (yes / **no**)
     - The public API, i.e., is any changed class annotated with `@Public(Evolving)`: (yes / **no**)
     - The serializers: (yes / **no** / don't know)
     - The runtime per-record code paths (performance sensitive): (yes / **no** / don't know)
     - Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / **no** / don't know)
     - The S3 file system connector: (**yes** / no / don't know)
   
   ## Documentation
   
     - Does this pull request introduce a new feature? (yes / **no**)
     - If yes, how is the feature documented? (**not applicable** / docs / JavaDocs / not documented)
   

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Check if RecoverableWriter supportsResume and act accordingly.
> --------------------------------------------------------------
>
>                 Key: FLINK-10522
>                 URL: https://issues.apache.org/jira/browse/FLINK-10522
>             Project: Flink
>          Issue Type: Sub-task
>          Components: filesystem-connector
>    Affects Versions: 1.6.0
>            Reporter: Kostas Kloudas
>            Assignee: Kostas Kloudas
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 1.7.0
>
>
> So far we assumed that all `RecoverableWriters` support "resuming", i.e. after recovering from a failure or from a savepoint they could keep writing to the previously "in-progress" file. This assumption holds for all current writers, but in order to be able to accommodate also filesystems that may not support this operation, we should check upon initialization if the writer supports resuming and if yes, we go as before, if not, we recover for commit and commit the previously in-progress file.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)