xuzq created HDFS-14722:
---------------------------
Summary: RBF: GetMountPointStatus should return mountTable
information when getFileInfoAll throw IOException
Key: HDFS-14722
URL: https://issues.apache.org/jira/browse/HDFS-14722
Project: Hadoop HDFS
Issue Type: Bug
Components: rbf
Reporter: xuzq
Assignee: xuzq
When IOException in getFileInfoAll, we should return the mountTable
informations instead of super information.
Code like:
{code:java}
// RouterClientProtocol#getMountPointStatus
try {
String mName = name.startsWith("/") ? name : "/" + name;
MountTableResolver mountTable = (MountTableResolver) subclusterResolver;
MountTable entry = mountTable.getMountPoint(mName);
if (entry != null) {
RemoteMethod method = new RemoteMethod("getFileInfo",
new Class<?>[] {String.class}, new RemoteParam());
HdfsFileStatus fInfo = getFileInfoAll(
entry.getDestinations(), method, mountStatusTimeOut);
if (fInfo != null) {
permission = fInfo.getPermission();
owner = fInfo.getOwner();
group = fInfo.getGroup();
childrenNum = fInfo.getChildrenNum();
} else {
permission = entry.getMode();
owner = entry.getOwnerName();
group = entry.getGroupName();
}
}
} catch (IOException e) {
LOG.error("Cannot get mount point: {}", e.getMessage());
}
{code}
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]