[ https://issues.apache.org/jira/browse/HDFS-3063?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13225850#comment-13225850 ]
Denny Ye commented on HDFS-3063: -------------------------------- hi Daryn, in case we use common place to path validation, does there need hook on each method that client can be invoke? The change looks that with validation of SafeMode. In my opinion, a possible place is RPC Server before reflection invocation, but it's terrible for RPC independence > NameNode should validate all coming file path > --------------------------------------------- > > Key: HDFS-3063 > URL: https://issues.apache.org/jira/browse/HDFS-3063 > Project: Hadoop HDFS > Issue Type: Improvement > Components: name-node > Affects Versions: 0.20.205.0 > Reporter: Denny Ye > Priority: Minor > Labels: namenode > Attachments: HDFS-3063.patch > > > NameNode provides RPC service for not only DFS client but also user defined > program. A common case we always met is that user transfers file path > prefixed with HDFS protocol("hdfs://{namenode:{port}}/{folder}/{file}"). > NameNode cannot map node meta-data with this path and always throw NPE. In > user client, we only see the NullPointerException, no other tips for which > step it occurs. > Also, NameNode should validate all coming file path with regular format. > One exception I met: > Exception in thread "main" org.apache.hadoop.ipc.RemoteException: > java.io.IOException: java.lang.NullPointerException > at > org.apache.hadoop.hdfs.server.namenode.INode.getPathComponents(INode.java:334) > at > org.apache.hadoop.hdfs.server.namenode.INode.getPathComponents(INode.java:329) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira