[
https://issues.apache.org/jira/browse/HDFS-13838?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16590788#comment-16590788
]
Siyao Meng commented on HDFS-13838:
-----------------------------------
[^HDFS-13838.001.patch]
1.Added "snapshot enabled" bit conversion in JsonUtilClient.toFileStatus().
2.Added new assertions in TestWebHDFS#testWebHdfsAllowandDisallowSnapshots() to
check "snapshot enabled" bit in FileStatus.
Was going to add test cases for HttpFS as well, but found that HttpFS doesn't
have allowSnapshot(), disallowSnapshot() APIs. Will add those APIs and
corresponding test cases in a separate Jira.
> WebHdfsFileSystem.getFileStatus() won't return correct "snapshot enabled"
> status
> --------------------------------------------------------------------------------
>
> Key: HDFS-13838
> URL: https://issues.apache.org/jira/browse/HDFS-13838
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: hdfs, webhdfs
> Affects Versions: 3.1.0, 3.0.3
> Reporter: Siyao Meng
> Assignee: Siyao Meng
> Priority: Major
> Attachments: HDFS-13838.001.patch
>
>
> "Snapshot enabled" status has been added in HDFS-12455 by [~ajaykumar].
> However, it is found by [~jojochuang] that WebHdfsFileSystem.getFileStatus()
> won't return the correct "snapshot enabled" status. The reason is that
> JsonUtilClient.toFileStatus() did not check and append the "snapshot enabled"
> flag to the resulting HdfsFileStatus object.
> Proof:
> In TestWebHDFS#testWebHdfsAllowandDisallowSnapshots(), add the following
> lines indicated by prepending "+":
>
> {code:java}
> // allow snapshots on /bar using webhdfs
> webHdfs.allowSnapshot(bar);
> +// check if snapshot status is enabled
> +assertTrue(dfs.getFileStatus(bar).isSnapshotEnabled());
> +assertTrue(webHdfs.getFileStatus(bar).isSnapshotEnabled());{code}
>
> The first assertion will pass, as expected, while the second assertion will
> fail because of the reason above.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]