Description of problem: An rm -rf of a directory causes the client (say FUSE) to crawl through the entire directory structure and unlink files and remove directories underneath the directory that is being entirely removed. This is slow, and also has too many round trips. As an admin shortcut for this removal process, it would be better to provide a mechanism whereby, a directory can be marked for deletion and removed from the name space, but acted upon by each individual brick. This can leverage the AFR janitor mechanism for the same purpose.
verified the fix in build - glusterfs-server-3.7.9-4.el7rhgs.x86_64. The fix works as expected Steps followed to verify: 1) created a distributed volume and created 1000 dirs and 1000 files under a directory say 'dir1' 2) From the gluster server, issued the following command 'setfattr -n glusterfs.dht.nuke -v "test" /mnt/dir-1' 3) After step 2 was completed, dir1 was not accessible immediately from the mountpoint 4) Validated if the entry was moved to '/bricks/brick*/dilbert/.glusterfs/landfill' and deleted eventually. Moving the bug to verified.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2016:1240