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

ASF GitHub Bot commented on HADOOP-19217:
-----------------------------------------

ivandika3 commented on PR #8063:
URL: https://github.com/apache/hadoop/pull/8063#issuecomment-3539600419

   @ayushtkn Thanks for taking a look.
   
   > curious where we will use it
   
   The problem that we encountered is that we have a client that can access 
both hdfs:// and ofs:// but TrashPolicyDefault and OzoneTrashPolicy is not 
compatible (TrashPolicyDefault was changed that cause issues where applied to 
Ozone). Despite setting "fs.trash.classname" in both HDFS and Ozone, only one 
will be picked (usually TrashPolicyDefault) which causes user not being able to 
move files to trash in Ozone. 
   
   Other related works like HADOOP-18013 and HADOOP-18893 approached it by 
using per-scheme configuration (e.g. fs.s3a.trash.classname)
   
   > adding this as a FileSystem API looks overkill to me, if it required for 
some particular use case, maybe part of getServerDefaults()?
   
   I am not aware with `getServerDefaults` and it seems we can move the 
TrashPolicy as part of `getServerDefaults` too. However, I feel adding a new 
FileSystem API is more explicit which also allows us to specify its behavior in 
FileSystem.md.




> Introduce getTrashPolicy to FileSystem API
> ------------------------------------------
>
>                 Key: HADOOP-19217
>                 URL: https://issues.apache.org/jira/browse/HADOOP-19217
>             Project: Hadoop Common
>          Issue Type: Improvement
>          Components: fs
>            Reporter: Ivan Andika
>            Priority: Major
>              Labels: pull-request-available
>
> Hadoop FileSystem supports multiple FileSystem implementations awareness 
> (e.g. client is aware of both hdfs:// and ofs:// protocols).
> However, it seems that currently Hadoop TrashPolicy remains the same 
> regardless of the URI scheme. The TrashPolicy is governed by 
> "fs.trash.classname" configuration and stays the same regardless of the 
> FileSystem implementation. For example, HDFS defaults to TrashPolicyDefault 
> and Ozone defaults to TrashPolicyOzone, but only one will be picked since the 
> the configuration will be overwritten by the other.
> Therefore, I propose to tie the TrashPolicy implementation to each FileSystem 
> implementation by introducing a new FileSystem#getTrashPolicy interface. 
> TrashPolicy#getInstance can call FileSystem#getTrashPolicy to get the 
> appropriate TrashPolicy.



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