Details
-
Bug
-
Resolution: Fixed
-
Minor
-
Lustre 2.5.0
-
3
-
12691
Description
In current code, when an archived file is removed from the file system, no HSM request is triggered. We rely on Changelogs and RobinHood reading them to have it sending corresponding hsm_remove requests to clean those orphans in HSM backend. This is done in purpose, to provide a way to implement "soft unlink". RobinHood will remove the file in the backend after a grace time. During this time, Admins could restore the file from the HSM if they want to (using import feature).
Requiring a RobinHood setup to handle this cleaning is a too big limitation. We should consider modifying this behaviour.
By default, Lustre should automatically add a HSM_REMOVE request for any last unlink. This way, no file will be leaked in the archive.
A tunable should be added to disable this behaviour (should we add this to hsm_policy?) and go back to a mode where an external component is responsible for tracking UNLINK changelogs and add hsm_remove requests when needed (Robinhood) (current behaviour).
Ok will try to work again on this patch if there is an urgent need now.
The reason my original patch did not work when being merged was due to some other changes (in test framework and also causing earlier object removal) that had been merged between its final+successful testing/review and the time it has landed.
LU-7881has addressed the necessary changes required for new sanity-hsm/test_26[a,b,c,d] to comply with new test framework changes.But I had still work to be done in order to address new condition caused by early object removal.
Just pushed a new patch-set #7 for change #18946 to try fixing this now.
By the way Li, why did you create a new #26980 Change-Id instead working on top of mine/existing ??