[LU-9968] sanity test 300g fails with 'create dir2 fails' Created: 09/Sep/17  Updated: 24/Oct/17  Resolved: 24/Oct/17

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.10.1, Lustre 2.11.0
Fix Version/s: Lustre 2.11.0

Type: Bug Priority: Minor
Reporter: James Nunez (Inactive) Assignee: James Nunez (Inactive)
Resolution: Fixed Votes: 0
Labels: easy, tests

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

sanity test_300g fails with the following lines from the test_log output

== sanity test 300g: check default striped directory for normal directory ============================ 17:47:37 (1504806457)
CMD: onyx-40vm7 /usr/sbin/lctl get_param -n version 2>/dev/null ||
				/usr/sbin/lctl lustre_build_version 2>/dev/null ||
				/usr/sbin/lctl --version 2>/dev/null | cut -d' ' -f2
error on LL_IOC_LMV_SETSTRIPE '/mnt/lustre/d300g.sanity/striped_dir/dir2' (3): No such device
/usr/bin/lfs setdirstripe: cannot create stripe dir '/mnt/lustre/d300g.sanity/striped_dir/dir2': No such device
 sanity test_300g: @@@@@@ FAIL: create dir2 fails 

The problem is in the test at

15297         $LFS setdirstripe -i2 $DIR/$tdir/striped_dir/dir2 ||
15298                 error "create dir2 fails"
15299         stripe_index=$($LFS getdirstripe -i $DIR/$tdir/striped_dir/dir2)
15300         [ $stripe_index -eq 2 ] ||
15301                 error "dir2 expect 2 got $stripe_index"

The test checks that there are at least two MDTs (we need to stop using MDSCOUNT as MDTCOUNT, but that’s for a different ticket) and then creates two directories with ‘lfs setdirstripe –iN …’, with N = 1 and 2, striping directories at MDT index 1 and MDT index 2.

The problem here is that, with only two MDTs, creating a directory that starts with MDT index 1 works as expected, but creating a directory that starts at index 2 fails because MDT indexes are zero based and we only have two MDTs with indexes 0 and 1.

This test has passed review-dne-part-* testing because typical DNE testing creates two MDSs with two MDTs each and a MDT starting index of 2 is valid.

There are at least two ways to fix this issue; make sure you have three or more MDTs for this test or just create directories that have starting index 0 and 1.

Logs for sanity test 300g failures are at
https://testing.hpdd.intel.com/test_sets/01353734-7efb-11e7-bbc6-5254006e85c2
https://testing.hpdd.intel.com/test_sets/dfb54824-9291-11e7-b72d-5254006e85c2
https://testing.hpdd.intel.com/test_sets/874485f2-942f-11e7-b722-5254006e85c2

I will create a patch for this issue.



 Comments   
Comment by Gerrit Updater [ 11/Sep/17 ]

James Nunez (james.a.nunez@intel.com) uploaded a new patch: https://review.whamcloud.com/28935
Subject: LU-9968 tests: correct stripe index sanity 300g
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: 24c2175d84835c093ed331ce3a6f498c382f7606

Comment by Gerrit Updater [ 24/Oct/17 ]

Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28935/
Subject: LU-9968 tests: correct stripe index sanity 300g
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 52a1befd75087190ff23c0750b85bb632f772474

Comment by Peter Jones [ 24/Oct/17 ]

Landed for 2.11

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