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

'truncate' does not save IDs on objects

Details

    • Improvement
    • Resolution: Fixed
    • Major
    • Lustre 2.17.0
    • Lustre 2.14.0, Lustre 2.16.1
    • None

    Description

      The OST_PUNCH RPC (as generated by "truncate -s" commands) does not set the UID/GID/PROJID stored on an OST object:

      [adilger@mookie ~]$ > /myth/tmp/adilger/ost4/fallocate2
      [adilger@mookie ~]$ truncate -s 1M /myth/tmp/adilger/ost4/fallocate2
      # debugfs -c -R "stat O/340000400/d$((0x194e6 % 32))/194e6" /dev/vgmyth/lvmythost4 
      debugfs 1.47.1-wc1 (18-May-2024)
      Inode: 114772   Type: regular    Mode:  07666   Flags: 0x80000
      Generation: 2361069134    Version: 0x00000069:0000007f
      User:     0   Group:     0   Project:     0   Size: 1048576
      :
      Extended attributes:
        lma: fid=[0x340000400:0x194e6:0x0] compat=8 incompat=0
      

      I haven't yet looked if this is because the client is not sending the UID/GID/PROJIDs in the OST_PUNCH RPC, if it isn't setting the appropriate OBD_MD_FLUID, ... flags in the obdo.o_valid field, or if the OST_PUNCH handling on the OST is not processing these fields to update the filter.fid xattr on the object.

      Attachments

        Issue Links

          Activity

            People

              mvef Marc Vef
              adilger Andreas Dilger
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: