[ https://issues.apache.org/jira/browse/HDFS-14722?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
xuzq updated HDFS-14722: ------------------------ Attachment: HDFS-14722-trunk-003.patch > 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 > Priority: Major > Attachments: HDFS-14722-trunk-001.patch, HDFS-14722-trunk-002.patch, > HDFS-14722-trunk-003.patch > > > 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: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org