hadoop-hdfs-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wei-Chiu Chuang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HDFS-12217) HDFS snapshots doesn't capture all open files when one of the open files is deleted
Date Tue, 01 Aug 2017 13:29:00 GMT

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

Wei-Chiu Chuang commented on HDFS-12217:
----------------------------------------

Thanks [~manojg] for the latest patch.
I am still a little concerned not logging the exception in {{DirectorySnapshottableFeature#addSnapshot}},
because an exception could be thrown from places other than {{LeaseManager#getINodeWithLeases}}
(such as an NPE in INodesInPath#getLastINode). If that happens, logging the exception message
wouldn't help much.

Can we add an overloaded SnapshotException constructor that has an additional Throwable as
an extra parameter, and throw that instead so that we pass that exception to the client?

Other than this, the rest LGTM.

Thanks. 

> HDFS snapshots doesn't capture all open files when one of the open files is deleted
> -----------------------------------------------------------------------------------
>
>                 Key: HDFS-12217
>                 URL: https://issues.apache.org/jira/browse/HDFS-12217
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: snapshots
>    Affects Versions: 3.0.0-alpha1
>            Reporter: Manoj Govindassamy
>            Assignee: Manoj Govindassamy
>         Attachments: HDFS-12217.01.patch, HDFS-12217.02.patch, HDFS-12217.03.patch, HDFS-12217.04.patch
>
>
> With the fix for HDFS-11402, HDFS Snapshots can additionally capture all the open files.
Just like all other files, these open files in the snapshots will remain immutable. But, sometimes
it is found that snapshots fail to capture all the open files in the system.
> Under the following conditions, LeaseManager will fail to find INode corresponding to
an active lease 
> * a file is opened for writing (LeaseManager allots a lease), and
> * the same file is deleted while it is still open for writing and having active lease,
and
> * the same file is not referenced in any other Snapshots/Trash
> {{INode[] LeaseManager#getINodesWithLease()}} can thus return null for few leases there
by causing the caller to trip over and not return all the open files needed by the snapshot
manager.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

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


Mime
View raw message