[ https://issues.apache.org/jira/browse/HDFS-17509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17845869#comment-17845869 ]
ASF GitHub Bot commented on HDFS-17509: --------------------------------------- ZanderXu commented on code in PR #6784: URL: https://github.com/apache/hadoop/pull/6784#discussion_r1598226242 ########## hadoop-hdfs-project/hadoop-hdfs-rbf/src/test/java/org/apache/hadoop/hdfs/server/federation/router/TestRouterRpc.java: ########## @@ -1224,6 +1239,26 @@ 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 + createFile(routerFS, existingFile, existingFileSize); + String sameRouterEmptyFile = + cluster.getFederatedTestDirectoryForNS(sameNameservice) + + "_newemptyfile"; + createFile(routerFS, sameRouterEmptyFile, 0); + // Concat in same namespaces, succeeds + testConcat(existingFile, sameRouterEmptyFile, false); + FileStatus mergedStatus = getFileStatus(routerFS, sameRouterEmptyFile); + assertEquals(existingFileSize, mergedStatus.getLen()); + + // Test when concat srclist has some empty file, namenode will throw IOException. + String srcEmptyFile = cluster.getFederatedTestDirectoryForNS(sameNameservice) + "_srcEmptyFile"; + createFile(routerFS, srcEmptyFile, 0); + String targetFile = cluster.getFederatedTestDirectoryForNS(sameNameservice) + "_targetFile"; + createFile(routerFS, targetFile, existingFileSize); + // Concat in same namespaces, succeeds + testConcat(srcEmptyFile, targetFile, true, true, Review Comment: here please check if the exception is `org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.HadoopIllegalArgumentException)` > 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: hdfs-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org