Details
-
Bug
-
Resolution: Fixed
-
Minor
-
None
-
None
-
3
-
9223372036854775807
Description
When creating a new file with a specific layout in a directory that has a default layout, none of the default layout parameters are inherited at all. For example, setting the default striping to use size 65536 bytes on OST2 in the video pool:
# lfs pool_list myth.audio Pool: myth.audio myth-OST0001_UUID myth-OST0002_UUID # mkdir /myth/tmp/ost2 # lfs setstripe -S 65536 -i 1 -p audio /myth/tmp/ost1audio # lfs getstripe -d /myth/tmp/ost3audio stripe_count: 1 stripe_size: 65536 stripe_offset: 1 pool: audio # touch /myth/tmp/ost1audio/orig touch /myth/tmp/ost1audio/orig [adilger@twoshoes ~]$ lfs getstripe /myth/tmp/ost1audio/orig lmm_stripe_count: 1 lmm_stripe_size: 65536 ✅ lmm_stripe_offset: 1 ✅ lmm_pool: audio ✅ obdidx objid objid group 1 1147360 0x1181e0 0 # lfs setstripe -S 1M /myth/tmp/ost1audio/new # lfs getstripe /myth/tmp/ost1audio/new lmm_stripe_count: 1 lmm_stripe_size: 1048576 ✅ lmm_stripe_offset: 3 ❌ obdidx objid objid group 3 1147358 0x1181de 0
This file did not inherit the the OST pool from the default layout, and as a result it was also allocated from a file that was not in the pool.
# lfs setstripe -c 2 /myth/tmp/ost1audio/next # lfs getstripe /myth/tmp/ost1audio/next lmm_stripe_count: 2 ✅ lmm_stripe_size: 65536 ✅ lmm_stripe_offset: 3 ❌ obdidx objid objid group 3 1147359 0x1181df 0 1 859771 0xd1e7b 0
The stripe_size was used for the new allocation, but the OST pool was not inherited, and as a result a of that the stripes are not constrained to which OSTs are involved.
Attachments
Issue Links
- is related to
-
LU-10369 running "lfs setstripe -c3 /mnt/lustre/pooldir/newfile" doesn't inherit pool
- Resolved