You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Shilun Fan (Jira)" <ji...@apache.org> on 2024/01/16 09:04:00 UTC

[jira] [Updated] (HDFS-14694) Call recoverLease on DFSOutputStream close exception

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

Shilun Fan updated HDFS-14694:
------------------------------
    Target Version/s: 3.3.2, 3.4.0  (was: 3.3.2)

> Call recoverLease on DFSOutputStream close exception
> ----------------------------------------------------
>
>                 Key: HDFS-14694
>                 URL: https://issues.apache.org/jira/browse/HDFS-14694
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: hdfs-client
>            Reporter: Chen Zhang
>            Assignee: Lisheng Sun
>            Priority: Major
>             Fix For: 3.4.0
>
>         Attachments: HDFS-14694.001.patch, HDFS-14694.002.patch, HDFS-14694.003.patch, HDFS-14694.004.patch, HDFS-14694.005.patch, HDFS-14694.006.patch, HDFS-14694.007.patch, HDFS-14694.008.patch, HDFS-14694.009.patch, HDFS-14694.010.patch, HDFS-14694.011.patch, HDFS-14694.012.patch, HDFS-14694.013.patch, HDFS-14694.014.patch
>
>
> HDFS uses file-lease to manage opened files, when a file is not closed normally, NN will recover lease automatically after hard limit exceeded. But for a long running service(e.g. HBase), the hdfs-client will never die and NN don't have any chances to recover the file.
> Usually client program needs to handle exceptions by themself to avoid this condition(e.g. HBase automatically call recover lease for files that not closed normally), but in our experience, most services (in our company) don't process this condition properly, which will cause lots of files in abnormal status or even data loss.
> This Jira propose to add a feature that call recoverLease operation automatically when DFSOutputSteam close encounters exception. It should be disabled by default, but when somebody builds a long-running service based on HDFS, they can enable this option.
> We've add this feature to our internal Hadoop distribution for more than 3 years, it's quite useful according our experience.



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

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-help@hadoop.apache.org