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

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

LiuGuH commented on code in PR #6291:
URL: https://github.com/apache/hadoop/pull/6291#discussion_r1402860528


##########
hadoop-hdfs-project/hadoop-hdfs-rbf/src/main/java/org/apache/hadoop/hdfs/server/federation/resolver/MountTableResolver.java:
##########
@@ -357,7 +357,7 @@ public void refreshEntries(final Collection<MountTable> 
entries) {
   @VisibleForTesting
   public static boolean isTrashPath(String path) throws IOException {
     Pattern pattern = Pattern.compile(
-        "^" + getTrashRoot() + TRASH_PATTERN + "/");
+        "^" + getTrashRoot() + TRASH_PATTERN);

Review Comment:
   Fox example , If we don't remove / , client executes command:  ls 
/user/*/.Trash/Current, it will only return the defalut nameservice  trash 
path.   
   The test case is in 
org.apache.hadoop.hdfs.server.federation.router.TestRouterTrash#testMultipleMountPoint
 , 
   ` FileStatus[] fileStatuses = fs.listStatus(new 
Path("/user/test-trash/.Trash/Current/"));
       assertEquals(3, fileStatuses.length);`
   If we don't remove / , fileStatuses.length will be 1.
   Thanks.
   





> RBF: Fix client ls trash path cannot get except default nameservices trash 
> path
> -------------------------------------------------------------------------------
>
>                 Key: HDFS-17263
>                 URL: https://issues.apache.org/jira/browse/HDFS-17263
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>            Reporter: liuguanghua
>            Priority: Major
>              Labels: pull-request-available
>
> With  HDFS-16024, we can rename data to the Trash should be based on src 
> locations. That is great for my useage.  After a period of use, I found this 
> cause a issue.
> There are two nameservices ns0   ns1,  and ns0 is the default nameservice.
> (1) Add moutTable 
> /home/data -> (ns0, /home/data)
> /data1/test1 -> (ns1, /data1/test1 )
> /data2/test2 -> (ns1, /data2/test2 )
> (2)mv file to trash
> ns0:   /user/test-user/.Trash/Current/home/data/file1
> ns1:   /user/test-user/.Trash/Current/data1/test1/file1
> (3) client via DFSRouter  ls will not see  
> /user/test-user/.Trash/Current/data1
> (4) client ls  /user/test-user/.Trash/Current/data2/test2 will return 
> exception .
>  
>  



--
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