Details
Description
Currently with quota turned on, user cannot call '-rmr' on large directory that causes over quota.
[knoguchi src]$ hadoop dfs -rmr /tmp/net2 rmr: Failed to move to trash: hdfs://abc.def.com/tmp/net2 [knoguchi src]$ hadoop dfs -mv /tmp/net2 /user/knoguchi/.Trash/Current mv: org.apache.hadoop.hdfs.protocol.QuotaExceededException: The quota of /user/knoguchi is exceeded: namespace quota=37500 file count=37757, diskspace quota=-1 diskspace=1991250043353
Besides from error message being unfriendly, how should this be handled?
Attachments
Attachments
Issue Links
- is related to
-
HADOOP-8598 Server-side Trash
- Open
1) Tell users to use -Dfs.trash.interval=0 when deleting large directory
2) Exclude /user/<username>/.Trash from the quota
3) Move .Trash out of /user directory. Maybe /Trash/<username> and set different quota.
4) When -rm/rmr fail with quota, automatically delete them.
5) Introduce a separate command that does (1). Something like -rmr -skipTrash for force delete.