Client-side async delete not working due to ontaptrashbin is exposed to NFS client
Applies to
- ONTAP 9.11.1 and later
Issue
- Client-side volume file async-delete is performed to delete the directory asynchronously.
- Client-side async-delete fails and exposes the hidden directory that by default is named .ontaptrashbin and breaks the second async-delete
- Initiate two client-side async-delete by using the mv command to the default hidden directory named ._ontaptrashbin
# mkdir d1;touch d1/f1;touch d1/f2;mkdir d2;touch d2/f1;touch d2/f2;mv d1 ._ontaptrashbin;mv d2 ._ontaptrashbin
- The first mv command for async delete job is started and EMS log is seen.
- The second mv command does not start async delete job, instead it moves d2 under <inode>_deleting_<timestamp> (former d1).
# ls -al ._ontaptrashbin << Visible ontaptrashbin.
total 24
drwxr-x--- 3 root root 4096 Oct 2 08:07 .
drwxr-xr-x 10 root root 16384 Oct 2 08:07 ..
drwxr-x--- 2 root root 4096 Oct 2 08:07 d2
<< d2 which was moved under ._ontaptrashbin or former-d1
# ls -ail .ontaptrashbin
<<< Notice inode 799682234 is used to refer ._ontaptrashbin
total 24
799682234 drwxr-x--- 3 root root 4096 Oct 2 08:07 .
2410294849 drwxr-xr-x 10 root root 16384 Oct 2 08:07 ..
531246817 drwxr-x--- 2 root root 4096 Oct 2 08:07 d2
- Cannot see f1 and f2 under .187_deleting_20241002_120716, meaning they got deleted as part of async-delete. But we can see d2, which got moved under it.
# ls -ail .187_deleting_20241002_120716
<<< Same inode 799682234 is actually .187_deleting_20241002_120716 or former-d1
total 24
799682234 drwxr-x--- 3 root root 4096 Oct 2 08:07 .
2410294849 drwxr-xr-x 10 root root 16384 Oct 2 08:07 ..
531246817 drwxr-x--- 2 root root 4096 Oct 2 08:07 d2
[root@scs000279392-7 fg_testv3]#
- Appears two async-delete jobs were started. Actually what happens is there was only 1 async-delete job started, hence only 1 EMS
::*> event show -message-name *async*
Time Node Severity Event
------------------- ---------------- ------------- ---------------------------
10/2/2024 08:07:16 node1
NOTICE asyncDelCli.message.start: Async-delete "{job 4:115}" has started on inode: 187 in volume (DSID: 1030, MSID: 2155107824).