Details
-
Improvement
-
Resolution: Fixed
-
Major
-
Lustre 2.14.0, Lustre 2.16.1
-
None
-
3
-
9223372036854775807
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.