-----============= acceptance-small: sanity-ec ============----- Thu Jun 11 21:56:48 EDT 2026 mgs: Rocky Linux release 8.10 (Green Obsidian) MGS_OS_ID_LIKE=rhel centos fedora rocky MGS_OS_VERSION_ID=8.10 MGS_OS_ID=rocky MGS_OS_VERSION_CODE=134873088 mds1: Rocky Linux release 8.10 (Green Obsidian) MDS1_OS_VERSION_ID=8.10 MDS1_OS_VERSION_CODE=134873088 MDS1_OS_ID_LIKE=rhel centos fedora rocky MDS1_OS_ID=rocky ost1: Rocky Linux release 8.10 (Green Obsidian) OST1_OS_VERSION_CODE=134873088 OST1_OS_ID_LIKE=rhel centos fedora rocky OST1_OS_VERSION_ID=8.10 OST1_OS_ID=rocky client: Rocky Linux release 8.10 (Green Obsidian) CLIENT_OS_ID=rocky CLIENT_OS_VERSION_CODE=134873088 CLIENT_OS_VERSION_ID=8.10 CLIENT_OS_ID_LIKE=rhel centos fedora rocky oleg355-server: ls: cannot access '/home/green/git/lustre-release/lustre/tests/except/sanity-ec.*ex': No such file or directory excepting tests: === sanity-ec: start setup 21:57:07 (1781229427) === oleg355-client.virtnet: executing check_config_client /mnt/lustre oleg355-client.virtnet: Checking config lustre mounted on /mnt/lustre Checking servers environments Checking clients oleg355-client.virtnet environments Using TIMEOUT=20 osc.lustre-OST0000-osc-ffff9bee51078000.idle_timeout=debug osc.lustre-OST0001-osc-ffff9bee51078000.idle_timeout=debug disable quota as required oleg355-server: oleg355-server.virtnet: executing set_default_debug vfstrace rpctrace dlmtrace neterror ha config ioctl super lfsck all osd-ldiskfs.track_declares_assert=1 === sanity-ec: finish setup 21:57:44 (1781229464) === running as uid/gid/euid/egid 500/500/500/500, groups: 500 [true] running as uid/gid/euid/egid 500/500/500/500, groups: 500 [touch] [/mnt/lustre/d0_runas_test/f8227] == sanity-ec test 1a: basic setstripe with single component and EC ========================================================== 21:57:46 (1781229466) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1a (9s) == sanity-ec test 1b: setstripe with --ec before -E (order independence) ========================================================== 21:57:55 (1781229475) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1b (8s) == sanity-ec test 1c: setstripe with colon separator (--ec 8:2) ========================================================== 21:58:03 (1781229483) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1c (6s) == sanity-ec test 1d: setstripe with multiple components and single EC spec ========================================================== 21:58:10 (1781229490) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1d (7s) == sanity-ec test 1e: setstripe with EC inheriting to second component ========================================================== 21:58:17 (1781229497) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1e (8s) == sanity-ec test 1f: setstripe with different EC for different components ========================================================== 21:58:25 (1781229505) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1f (6s) == sanity-ec test 1g: setstripe with different parity counts ========================================================== 21:58:31 (1781229511) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1g (6s) == sanity-ec test 1h: setstripe with -N flag and explicit stripe counts with --ec ========================================================== 21:58:37 (1781229517) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1h (6s) == sanity-ec test 1i: default EC layout on directory ===== 21:58:44 (1781229524) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 striped dir -i1 -c2 -H fnv_1a_64 /mnt/lustre/d1i.sanity-ec PASS 1i (7s) == sanity-ec test 1j: verify EC component inherits stripe size from data component ========================================================== 21:58:51 (1781229531) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 1j (6s) == sanity-ec test 2a: setstripe with -N and EC =========== 21:58:57 (1781229537) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 2a (6s) == sanity-ec test 2b: setstripe with -N: two data mirrors, one with EC ========================================================== 21:59:04 (1781229544) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 2b (8s) == sanity-ec test 2c: setstripe with -N: two data mirrors, both with EC ========================================================== 21:59:11 (1781229551) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 2c (8s) == sanity-ec test 2d: setstripe with -N2: multiple identical EC mirrors ========================================================== 21:59:19 (1781229559) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 2d (7s) == sanity-ec test 2e: setstripe with -N: mixed regular and EC mirrors ========================================================== 21:59:26 (1781229566) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 2e (6s) == sanity-ec test 2f: default EC layout on directory using mirror mode ========================================================== 21:59:32 (1781229572) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 striped dir -i0 -c2 -H crush /mnt/lustre/d2f.sanity-ec PASS 2f (7s) == sanity-ec test 3a: lfs mirror create with single EC mirror ========================================================== 21:59:39 (1781229579) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3a (6s) == sanity-ec test 3b: lfs mirror create with -N2 and EC == 21:59:45 (1781229585) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3b (7s) == sanity-ec test 3c: lfs mirror create with mixed EC and regular mirrors ========================================================== 21:59:52 (1781229592) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3c (7s) == sanity-ec test 3d: lfs mirror create with different EC configs per mirror ========================================================== 21:59:59 (1781229599) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3d (8s) == sanity-ec test 3e: lfs mirror create with multiple EC specs in one mirror ========================================================== 22:00:07 (1781229607) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3e (7s) == sanity-ec test 3f: EC inheritance with holes ========== 22:00:14 (1781229614) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3f (6s) == sanity-ec test 3g: EC parity mirror inherits pool from data mirror ========================================================== 22:00:21 (1781229621) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 3g (6s) == sanity-ec test 4a: reject invalid EC parameters: parity > data ========================================================== 22:00:26 (1781229626) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4a (7s) == sanity-ec test 4b: reject invalid EC parameters: data count < 2 ========================================================== 22:00:34 (1781229634) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4b (5s) == sanity-ec test 4c: reject invalid EC parameters: parity = 0 ========================================================== 22:00:39 (1781229639) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4c (6s) == sanity-ec test 4d: reject malformed EC specifications ========================================================== 22:00:45 (1781229645) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4d (5s) == sanity-ec test 4e: auto-create [0,EOF] component when --ec without -E ========================================================== 22:00:50 (1781229650) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4e (7s) == sanity-ec test 4f: reject --ec with incompatible options (--foreign) ========================================================== 22:00:57 (1781229657) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4f (6s) == sanity-ec test 4g: reject EC stripe counts exceeding limits without --ec-expert ========================================================== 22:01:03 (1781229663) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 4g (6s) == sanity-ec test 5a: EC mirror read/write commands ====== 22:01:09 (1781229669) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 PASS 5a (7s) == sanity-ec test 6a: Block setting prefer flags on parity components ========================================================== 22:01:16 (1781229676) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 Component IDs: 65537 65538 131075 131076 PASS 6a (7s) == sanity-ec test 6b: EC write selects data mirror, not parity mirror ========================================================== 22:01:24 (1781229684) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 Data component: 65537, Parity component: 131074 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.0783476 s, 26.8 MB/s PASS 6b (8s) == sanity-ec test 6c: EC with multiple data mirrors - parity never selected ========================================================== 22:01:32 (1781229692) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 SKIP: sanity-ec test_6c needs >= 4 OSTs SKIP 6c (4s) == sanity-ec test 6d: Manually mark parity mirror stale and resync ========================================================== 22:01:36 (1781229696) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 Data component: 65537, Parity component: 131074 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.168464 s, 12.4 MB/s PASS 6d (8s) == sanity-ec test 6e: Write fails when only parity mirror is non-stale ========================================================== 22:01:44 (1781229704) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 Data component: 65537, Parity component: 131074 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.0616679 s, 34.0 MB/s PASS 6e (8s) == sanity-ec test 7: nosync flag on parity mirror prevents resync updates ========================================================== 22:01:52 (1781229712) llite.lustre-ffff9bee51078000.enable_erasure_coding=1 Data component: 65537, Parity component: 131074 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.118109 s, 17.8 MB/s 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.16612 s, 12.6 MB/s Initial parity mirror checksum: 32e33805b683a3441af09e69c5aba529 - 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.0720968 s, 29.1 MB/s CRC-32 checksum value for chunk [0, 0x200000): Mirror 2: 0x87ab895 (nosync,stale) 2+0 records in 2+0 records out 2097152 bytes (2.1 MB, 2.0 MiB) copied, 0.209058 s, 10.0 MB/s Data mirror checksum: 5601a9ec08a116547680bf7280a9940e - Parity mirror checksum: 32e33805b683a3441af09e69c5aba529 - Final data mirror checksum: 5601a9ec08a116547680bf7280a9940e - Final parity mirror checksum: 5601a9ec08a116547680bf7280a9940e - PASS 7 (9s) == sanity-ec test complete, duration 311 sec ============= 22:02:01 (1781229721) === sanity-ec: start cleanup 22:02:02 (1781229722) === === sanity-ec: finish cleanup 22:02:05 (1781229725) ===