Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-4640

Last unlink should trigger HSM remove by default

Details

    • Bug
    • Resolution: Fixed
    • Minor
    • Lustre 2.10.0
    • 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).

      Attachments

        Issue Links

          Activity

            [LU-4640] Last unlink should trigger HSM remove by default

            Li Xi (lixi@ddn.com) uploaded a new patch: https://review.whamcloud.com/26980
            Subject: LU-4640 mdt: implement Remove Archive on Last Unlink policy
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: 4d76c26ec74c3b0748c6b0a3bf10ff1eebfab216

            gerrit Gerrit Updater added a comment - Li Xi (lixi@ddn.com) uploaded a new patch: https://review.whamcloud.com/26980 Subject: LU-4640 mdt: implement Remove Archive on Last Unlink policy Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 4d76c26ec74c3b0748c6b0a3bf10ff1eebfab216

            Hi, Any plan to merge this patch in the near future? I am asking because I realize this is a critical problem for the policy engine that I am working on (Lustre Integrated Policy Engine). This policy engine doesn't require Lustre Changelog, thus the policy engine can not be notified by the Changelog about the unlinking of files.

            lixi Li Xi (Inactive) added a comment - Hi, Any plan to merge this patch in the near future? I am asking because I realize this is a critical problem for the policy engine that I am working on (Lustre Integrated Policy Engine). This policy engine doesn't require Lustre Changelog, thus the policy engine can not be notified by the Changelog about the unlinking of files.

            Faccini Bruno (bruno.faccini@intel.com) uploaded a new patch: http://review.whamcloud.com/18946
            Subject: LU-4640 mdt: implement Remove Archive on Last Unlink policy
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: 2ed64a4994a866ce653f10af1c110abe6d506ecc

            gerrit Gerrit Updater added a comment - Faccini Bruno (bruno.faccini@intel.com) uploaded a new patch: http://review.whamcloud.com/18946 Subject: LU-4640 mdt: implement Remove Archive on Last Unlink policy Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 2ed64a4994a866ce653f10af1c110abe6d506ecc
            bfaccini Bruno Faccini (Inactive) added a comment - - edited

            Basically and after more thinking about this, seems that the best way is to revert the revert and then to add additional changes (LU-7881). This should lead to a new commit for the almos the same changes.

            bfaccini Bruno Faccini (Inactive) added a comment - - edited Basically and after more thinking about this, seems that the best way is to revert the revert and then to add additional changes ( LU-7881 ). This should lead to a new commit for the almos the same changes.

            Humm, but what is the best way to do so? I have tried to first rebase my patch on top of master already containing it and its revert, but nothing/no-change happen.
            This could be side effect of the revert that does not really undo the first merge but only applies a patch to revert the original data changes ...
            So, do I need to create a new patch by manually back-porting the changes of original patch on top of master ??

            bfaccini Bruno Faccini (Inactive) added a comment - Humm, but what is the best way to do so? I have tried to first rebase my patch on top of master already containing it and its revert, but nothing/no-change happen. This could be side effect of the revert that does not really undo the first merge but only applies a patch to revert the original data changes ... So, do I need to create a new patch by manually back-porting the changes of original patch on top of master ??

            Well the problem comes from the time that this patch has waited to be landed, when in the meantime patch for LU-7136 was, and thus changed sanity-hsm framework causing this issue ...

            Will push a new version/patch-set of http://review.whamcloud.com/14384/ that will integrate my additional change for LU-7881 (http://review.whamcloud.com/#/c/18919/, "use new functions to kill and verify CT death" ).

            bfaccini Bruno Faccini (Inactive) added a comment - Well the problem comes from the time that this patch has waited to be landed, when in the meantime patch for LU-7136 was, and thus changed sanity-hsm framework causing this issue ... Will push a new version/patch-set of http://review.whamcloud.com/14384/ that will integrate my additional change for LU-7881 ( http://review.whamcloud.com/#/c/18919/ , "use new functions to kill and verify CT death" ).
            green Oleg Drokin added a comment -

            This patch was reverted due to testing problems discussed in LU-7881 causing big disruption to other patches.

            green Oleg Drokin added a comment - This patch was reverted due to testing problems discussed in LU-7881 causing big disruption to other patches.

            Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/18925/
            Subject: Revert "LU-4640 mdt: implement Remove Archive on Last Unlink policy"
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: d9f95aa201341d972eeb610471e3c45f1ba12202

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/18925/ Subject: Revert " LU-4640 mdt: implement Remove Archive on Last Unlink policy" Project: fs/lustre-release Branch: master Current Patch Set: Commit: d9f95aa201341d972eeb610471e3c45f1ba12202

            Oleg Drokin (oleg.drokin@intel.com) uploaded a new patch: http://review.whamcloud.com/18925
            Subject: Revert "LU-4640 mdt: implement Remove Archive on Last Unlink policy"
            Project: fs/lustre-release
            Branch: master
            Current Patch Set: 1
            Commit: 97b0e7059a9755e918e0760fd21b33186395cf5b

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) uploaded a new patch: http://review.whamcloud.com/18925 Subject: Revert " LU-4640 mdt: implement Remove Archive on Last Unlink policy" Project: fs/lustre-release Branch: master Current Patch Set: 1 Commit: 97b0e7059a9755e918e0760fd21b33186395cf5b

            Hello Aurelien,
            Now my patch to implement RAoLU has finally landed, do you agree that we can close this long standing ticket ??

            bfaccini Bruno Faccini (Inactive) added a comment - Hello Aurelien, Now my patch to implement RAoLU has finally landed, do you agree that we can close this long standing ticket ??

            Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/14384/
            Subject: LU-4640 mdt: implement Remove Archive on Last Unlink policy
            Project: fs/lustre-release
            Branch: master
            Current Patch Set:
            Commit: 74d92933108dc64b110a843352cf3336dca249d0

            gerrit Gerrit Updater added a comment - Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/14384/ Subject: LU-4640 mdt: implement Remove Archive on Last Unlink policy Project: fs/lustre-release Branch: master Current Patch Set: Commit: 74d92933108dc64b110a843352cf3336dca249d0

            People

              bfaccini Bruno Faccini (Inactive)
              adegremont Aurelien Degremont (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              13 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: