[LU-12055] lod: ignore root layout if parent's one includes pool Created: 10/Mar/19  Updated: 30/Apr/19  Resolved: 30/Apr/19

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.13.0

Type: Bug Priority: Minor
Reporter: Vladimir Saveliev Assignee: Vladimir Saveliev
Resolution: Fixed Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

When parent directory provides striping information which includes a pool, missing layout components should not be taken from root directory striping (in lod_ah_init()). Otherwise, pool configuration and root layout mismatch leads to create failure.
Test to illustrate the issue:

test_27H() {
	local POOL=${POOL:-testpool}
        local ostrange="1 1 1"
 
        $SETSTRIPE -c 2 -i 0 $MOUNT
        pool_add $POOL || error "pool_add failed"
        pool_add_targets $POOL $ostrange || "pool_add_targets failed"
        test_mkdir $DIR/$tdir
	$SETSTRIPE -p $POOL $DIR/$tdir
        $MULTIOP $DIR/$tdir/$tfile Oc || error "multiop failed"
        $GETSTRIPE $DIR/$tdir/$tfile
}
run_test 27H "check that root dir striping does not break parent dir one"

The test's output:

== sanity test 27H: check that root dir striping does not break parent dir one ======================= 09:28:20 (1552199300)
Creating new pool
Pool lustre.testpool created
Adding targets to pool
OST lustre-OST0001_UUID added to pool lustre.testpool
open(O_RDWR|O_CREAT): Invalid argument
 sanity test_27H: @@@@@@ FAIL: multiop failed 


 Comments   
Comment by Gerrit Updater [ 10/Mar/19 ]

Vladimir Saveliev (c17830@cray.com) uploaded a new patch: https://review.whamcloud.com/34386
Subject: LU-12055 lod: ignore root layout if parent's one includes pool
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 77a280d391e7de3906da5c7971a416d35f1a2798

Comment by Gerrit Updater [ 30/Apr/19 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/34386/
Subject: LU-12055 lod: ignore root layout if parent's one includes pool
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: d8b08f467de92664e116b068abfc0c250ea66a62

Comment by Peter Jones [ 30/Apr/19 ]

Landed for 2.13

Generated at Sat Feb 10 02:49:17 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.