[ https://issues.apache.org/jira/browse/HDFS-6451?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Abhiraj Butala updated HDFS-6451: --------------------------------- Attachment: HDFS-6451.patch Attaching one version of the fix, which introduces a function to check the IOException type and return the NFS3Status code accordingly. Please note that, the function returns NFS3ERR_ACCES for AccessControlException (instead of NFS3ERR_PERM), as that gave 'Permission denied' responses on my setup as shown below (this is also in sync with some of the discussion in HDFS 6411): {code} $ ls log4j.properties loglog $ mv log4j.properties abc mv: cannot move `log4j.properties' to `abc': Permission denied $ ln -s log4j.properties abc ln: failed to create symbolic link `abc': Permission denied $ rm log4j.properties rm: remove write-protected regular file `log4j.properties'? y rm: cannot remove `log4j.properties': Permission denied {code} Please let me know if there are any suggestions. Thank you! > NFS should not return NFS3ERR_IO for AccessControlException > ------------------------------------------------------------ > > Key: HDFS-6451 > URL: https://issues.apache.org/jira/browse/HDFS-6451 > Project: Hadoop HDFS > Issue Type: Bug > Components: nfs > Reporter: Brandon Li > Attachments: HDFS-6451.patch > > > As [~jingzhao] pointed out in HDFS-6411, we need to catch the > AccessControlException from the HDFS calls, and return NFS3ERR_PERM instead > of NFS3ERR_IO for it. > Another possible improvement is to have a single class/method for the common > exception handling process, instead of repeating the same exception handling > process in different NFS methods. -- This message was sent by Atlassian JIRA (v6.2#6252)