Details
-
Technical task
-
Resolution: Unresolved
-
Minor
-
None
-
None
-
None
-
9223372036854775807
Description
In the following PCC test case:
client1# echo "QQQQQ" > /mnt/lustre/test
client1# lfs pcc attach -i $HSM_ARCHIVE_NUMBER /mnt/lustre/test
client2# rm /mnt/lustre/test
If a file is RW-PCC attached on Client1, and then is unlinked on another client Client2, although the file is already removed on MDT, but in the current Lustre, the inode of the file is still cached in memory on Client1, thus the PCC copy will not be detached until the in-memory inode is reclaimed on Client1. This will result that the file is deleted (from an remote client), but the space used by the PCC copy will not be released.
One solution for this problem is to use HSM Remove Archive on Last Unlink (RAoLU). It just needs some small fixes on the current lhsmtool_posix: When the copytool on a PCC client received a HSM_REMOVE request, it first detaches the file from PCC and then performs the HSM_REMOVE request.
The above strategy only solves this problem for RW-PCC, but not RO-PCC.