[ https://issues.apache.org/jira/browse/HDFS-6326?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Chris Nauroth updated HDFS-6326: -------------------------------- Attachment: HDFS-6326.2.patch Here is patch v2, changing the exception handling in ls. I took a very defensive approach and just caught {{Exception}}. This fixes the immediate problem and also anticipates any future problems related to custom {{FileSystem}} implementations. Of course, it's not generally a good idea to do a blanket catch of {{Exception}}. In this case though, the worst thing that can happen is that we skip displaying the '+', which I think is preferable over causing the ls command to fail if there are other unanticipated failures related to {{getAclStatus}}. In addition to running the ACL-related unit tests, I also did some manual testing. I tested ls using URLs with the webhdfs scheme against a 2.3.0 cluster, and it worked. I also tested against a trunk cluster and confirmed that I was still getting the '+' appended. > WebHdfs ACL compatibility is broken > ----------------------------------- > > Key: HDFS-6326 > URL: https://issues.apache.org/jira/browse/HDFS-6326 > Project: Hadoop HDFS > Issue Type: Bug > Components: webhdfs > Affects Versions: 3.0.0, 2.4.0 > Reporter: Daryn Sharp > Assignee: Chris Nauroth > Priority: Blocker > Attachments: HDFS-6326.1.patch, HDFS-6326.2.patch > > > 2.4 ACL support is completely incompatible with <2.4 webhdfs servers. The NN > throws an {{IllegalArgumentException}} exception. > {code} > hadoop fs -ls webhdfs://nn/ > Found 21 items > ls: Invalid value for webhdfs parameter "op": No enum constant > org.apache.hadoop.hdfs.web.resources.GetOpParam.Op.GETACLSTATUS > [... 20 more times...] > {code} -- This message was sent by Atlassian JIRA (v6.2#6252)