Bug
The --etcd_opts code path in fio_run line 1225 sets block_size=2300. The block_size parameter is in KiB throughout the script — it is multiplied by 1024 at line 804:
ios=$(echo "${io_size}*1024" | bc)
This produces bs=2355200 (2,355,200 bytes ≈ 2.25 MiB) in the FIO job file. Real etcd writes are approximately 2.3 KB, so the intended block size was likely 2300 bytes, not 2300 KiB.
Expected Behavior
etcd simulation should use a ~2300-byte block size to match real etcd write patterns.
Notes
There is no straightforward fix without either:
- Adding a special case in
loop_block_sizes to skip the *1024 multiplication for etcd, or
- Expressing the value in KiB (approximately
2.25 or rounding to 2), which loses precision.
Bug
The
--etcd_optscode path infio_runline 1225 setsblock_size=2300. Theblock_sizeparameter is in KiB throughout the script — it is multiplied by 1024 at line 804:ios=$(echo "${io_size}*1024" | bc)This produces
bs=2355200(2,355,200 bytes ≈ 2.25 MiB) in the FIO job file. Real etcd writes are approximately 2.3 KB, so the intended block size was likely 2300 bytes, not 2300 KiB.Expected Behavior
etcd simulation should use a ~2300-byte block size to match real etcd write patterns.
Notes
There is no straightforward fix without either:
loop_block_sizesto skip the*1024multiplication for etcd, or2.25or rounding to2), which loses precision.