Uploaded image for project: 'Lustre'
  1. Lustre
  2. LU-18456 TCU: Trash Can/Undelete for Lustre
  3. LU-19259

TCU: support files into trash on 'open(O_TRUNC)' or 'truncate(0)'

XMLWordPrintable

    • Icon: Technical task Technical task
    • Resolution: Unresolved
    • Icon: Medium Medium
    • None
    • Lustre 2.16.0
    • 3
    • 9223372036854775807

      It would be useful to allow intermediate versions of a file to be saved into the trash can when the whole file is deleted/overwritten via open(O_TRUNC) or truncate(0) (though not for files that were just created or do not have any data).

      The objects on the file should be moved to a newly-created file in the Trash Can using layout swap, so that data does not need to be copied. The layout swapped from the "victim" file should use the original file as the template, and since it is new/empty it should trigger new OST object allocation again. The victim file should copy over xattrs from the original file to ensure all of the state is saved.

      The filename in Trash Can should be the original name, or a versioned name with the same duplicate filename policy as in LU-19239.

            qian_wc Qian Yingjin
            adilger Andreas Dilger
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: