[ 
https://issues.apache.org/jira/browse/HDFS-17509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17845576#comment-17845576
 ] 

ASF GitHub Bot commented on HDFS-17509:
---------------------------------------

ZanderXu commented on code in PR #6784:
URL: https://github.com/apache/hadoop/pull/6784#discussion_r1597413470


##########
hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterRpc.java:
##########
@@ -1224,6 +1224,17 @@ public void testProxyConcatFile() throws Exception {
     String badPath = "/unknownlocation/unknowndir";
     compareResponses(routerProtocol, nnProtocol, m,
         new Object[] {badPath, new String[] {routerFile}});
+
+    // Test when concat trg is a empty file

Review Comment:
   Can you modify the UT to cover the case that one or more source files are 
empty?



##########
hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/router/RouterClientProtocol.java:
##########
@@ -1009,6 +1000,20 @@ public HdfsFileStatus getFileInfo(String src) throws 
IOException {
     return ret;
   }
 
+  public RemoteResult<RemoteLocation, HdfsFileStatus> 
getFileRemoteResult(String path)
+      throws IOException {
+    rpcServer.checkOperation(NameNode.OperationCategory.READ);
+
+    final List<RemoteLocation> locations = rpcServer.getLocationsForPath(path, 
false, false);
+    RemoteMethod method =
+        new RemoteMethod("getFileInfo", new Class<?>[] {String.class}, new 
RemoteParam());
+    // Check for file information sequentially
+    RemoteResult<RemoteLocation, HdfsFileStatus> result =

Review Comment:
   RBF is simply responsible for locating the downstream namespace and then 
proxying the request.
   So if the input path is only mounted to one namespace, RBF only needs to 
proxy it directly.  RBF does not need to check if the file exists in this only 
one downstream namespace, right?





> RBF: Fix ClientProtocol.concat  will throw NPE if tgr is a empty file.
> ----------------------------------------------------------------------
>
>                 Key: HDFS-17509
>                 URL: https://issues.apache.org/jira/browse/HDFS-17509
>             Project: Hadoop HDFS
>          Issue Type: Bug
>            Reporter: liuguanghua
>            Priority: Minor
>              Labels: pull-request-available
>
> hdfs dfs -concat  /tmp/merge /tmp/t1 /tmp/t2
> When /tmp/merge is a empty file, this command will throw NPE via DFSRouter. 
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to