[
https://issues.apache.org/jira/browse/HDFS-9351?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Yongjun Zhang updated HDFS-9351:
--------------------------------
Description:
I looked further at HDFS-9231 change I reviewed earlier, and realize I missed
one thing.
The patch changed
{code}
if (snapshottableDirs != null) {
SnapshottableDirectoryStatus[] snapshotDirs = namenode.getRpcServer()
.getSnapshottableDirListing();
if (snapshotDirs != null) {
for (SnapshottableDirectoryStatus dir : snapshotDirs) {
snapshottableDirs.add(dir.getFullPath().toString());
}
}
}
{code}
to
{code}
if (snapshottableDirs != null) {
snapshottableDirs = namenode.getNamesystem().getSnapshottableDirs();
}
{code}
In old code, namenode.getRpcServer().getSnapshottableDirListing() calls
checkNNStartup(), however, this is not done with the new code. This is a hole
of the earlier HDFS-9231 patch.
Create this jira to fix the hole. Suggest to revert this portion of the change,
and add code to do what we need at NamenodeFsck.
Sorry for missing this in my earlier review of HDFS-9231.
Thanks.
was:
I looked further at HDFS-9231 change I reviewed earlier, and realize I missed
one thing.
The patch changed
{code}
if (snapshottableDirs != null) {
SnapshottableDirectoryStatus[] snapshotDirs = namenode.getRpcServer()
.getSnapshottableDirListing();
if (snapshotDirs != null) {
for (SnapshottableDirectoryStatus dir : snapshotDirs) {
snapshottableDirs.add(dir.getFullPath().toString());
}
}
}
{code}
to
{code}
if (snapshottableDirs != null) {
snapshottableDirs = namenode.getNamesystem().getSnapshottableDirs();
}
{code}
In old code, namenode.getRpcServer().getSnapshottableDirListing() calls
checkNNStartup(), however, this is not done with the new code. This is a hole
of the earlier HDFS-9231 patch.
Create this jira to fix the hole. Suggest to revert this portion of the change,
and add code to do what we need at NamenodeFsck.
Thanks.
> No checkNNStartup() is called when fsck calls
> FSNamesystem.getSnapshottableDirs()
> ---------------------------------------------------------------------------------
>
> Key: HDFS-9351
> URL: https://issues.apache.org/jira/browse/HDFS-9351
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: HDFS
> Reporter: Yongjun Zhang
> Assignee: Xiao Chen
>
> I looked further at HDFS-9231 change I reviewed earlier, and realize I missed
> one thing.
> The patch changed
> {code}
> if (snapshottableDirs != null) {
> SnapshottableDirectoryStatus[] snapshotDirs = namenode.getRpcServer()
> .getSnapshottableDirListing();
> if (snapshotDirs != null) {
> for (SnapshottableDirectoryStatus dir : snapshotDirs) {
> snapshottableDirs.add(dir.getFullPath().toString());
> }
> }
> }
> {code}
> to
> {code}
> if (snapshottableDirs != null) {
> snapshottableDirs = namenode.getNamesystem().getSnapshottableDirs();
> }
> {code}
> In old code, namenode.getRpcServer().getSnapshottableDirListing() calls
> checkNNStartup(), however, this is not done with the new code. This is a hole
> of the earlier HDFS-9231 patch.
> Create this jira to fix the hole. Suggest to revert this portion of the
> change, and add code to do what we need at NamenodeFsck.
> Sorry for missing this in my earlier review of HDFS-9231.
> Thanks.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)