[ https://issues.apache.org/jira/browse/HDFS-9851?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Brahma Reddy Battula updated HDFS-9851: --------------------------------------- Attachment: HDFS-9851-branch-2.7.patch > Name node throws NPE when setPermission is called on a path that does not > exist > ------------------------------------------------------------------------------- > > Key: HDFS-9851 > URL: https://issues.apache.org/jira/browse/HDFS-9851 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode > Affects Versions: 2.7.1, 2.7.2 > Reporter: David Yan > Assignee: Brahma Reddy Battula > Priority: Critical > Attachments: HDFS-9851-002.patch, HDFS-9851-branch-2.7.patch, > HDFS-9851.patch > > > Tried it on both Hadoop 2.7.1 and 2.7.2, and I'm getting the same error when > setPermission is called on a path that does not exist: > {code} > 16/02/23 16:37:03.888 DEBUG > security.UserGroupInformation:FSPermissionChecker.ja > va:164 - ACCESS CHECK: > org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker@299b19af, > doCheckOwner=true, ancestorAccess=null, parentAccess=null, access=null, > subAccess=null, ignoreEmptyDir=false > 16/02/23 16:37:03.889 DEBUG ipc.Server:ProtobufRpcEngine.java:631 - Served: > setPermission queueTime= 3 procesingTime= 3 exception= NullPointerException > 16/02/23 16:37:03.890 WARN ipc.Server:Server.java:2068 - IPC Server handler 2 > on 9000, call org.apache.hadoop.hdfs.protocol.ClientProtocol.setPermission > from 127.0.0.1:36190 Call#21 Retry#0 > java.lang.NullPointerException > at > org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkOwner(FSPermissionChecker.java:247) > at > org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:227) > at > org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:190) > at > org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkPermission(FSDirectory.java:1720) > at > org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkPermission(FSDirectory.java:1704) > at > org.apache.hadoop.hdfs.server.namenode.FSDirectory.checkOwner(FSDirectory.java:1673) > at > org.apache.hadoop.hdfs.server.namenode.FSDirAttrOp.setPermission(FSDirAttrOp.java:61) > at > org.apache.hadoop.hdfs.server.namenode.FSNamesystem.setPermission(FSNamesystem.java:1653) > at > org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.setPermission(NameNodeRpcServer.java:695) > at > org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.setPermission(ClientNamenodeProtocolServerSideTranslatorPB.java:453) > at > org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java) > at > org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:616) > at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:969) > at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2049) > at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2045) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:415) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1657) > at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2043) > {code} > I don't see this problem with Hadoop 2.6.x. > The client that issues the setPermission call was compiled with Hadoop 2.2.0 > libraries. -- This message was sent by Atlassian JIRA (v6.3.4#6332)