这些错误在 sysbench 磁盘测试中意味着什么?

这些错误在 sysbench 磁盘测试中意味着什么?

我一直在使用紧凑型闪存的 Linux 系统上运行 sysbench 磁盘测试的连续测试。我在输出中看到一些错误,如下所示。这些错误到底意味着什么?这是否意味着某些磁盘读取失败?该部件本身是工业级部件,支持 SMART,并且 SMART 报告没有不可恢复的 ECC 故障。

我用来运行测试的命令是:

虽然是真的;执行 sysbench --num-threads=16 --test=fileio --file-total-size=3500M --file-test-mode=rndrw 准备; sysbench --num-threads=16 --test=fileio --file-total-size=500M --file-test-mode=rndrw 运行;同步; sysbench --num-threads=16 --test=fileio --file-total-size=3500M --file-test-mode=rndrw 清理;完毕

示例输出:

sysbench 0.4.12:多线程系统评估基准

128 个文件,每个 28000Kb,总共 3500Mb
创建测试文件...
致命:写入文件失败!错误号 = 28 (|||)
sysbench 0.4.12:多线程系统评估基准

使用以下选项运行测试:
线程数:16

额外的文件打开标志:0
128 个文件,每个 3.9062Mb
文件总大小 500Mb
块大小 16Kb
随机IO的随机请求数:10000
组合随机 IO 测试的读/写比率:1.50
启用定期 FSYNC,每 100 个请求调用 fsync()。
测试结束时调用 fsync(),启用。
使用同步I/O模式
进行随机读/写测试
话题开始了!
致命:读取文件失败!文件:127位置:2965504 errno = 0()
致命:读取文件失败!文件:127位置:540672 errno = 0()
致命:读取文件失败!文件:130 位置:655360 errno = 0 ()
致命:读取文件失败!文件:129 位置:2441216 errno = 0 ()
致命:读取文件失败!文件:129 位置:475136 errno = 0 ()
致命:读取文件失败!文件:128位置:2588672 errno = 0()
致命:读取文件失败!文件:126位置:2588672 errno = 0()
致命:读取文件失败!文件:127位置:2899968 errno = 0()
致命:读取文件失败!文件:125 位置:3309568 errno = 0 (T|v|)
致命:读取文件失败!文件: 126 位置: 49152 errno = 0 (|v|0R0||v|R0||u||Q0|T|Q0|T|v|)
致命:读取文件失败!文件:125位置:1097728 errno = 0()
致命:读取文件失败!文件:126 位置:606208 errno = 0 ()
致命:写入文件失败!文件:125位置:3440640 errno = 28()
致命:无法进行 wrisysbench 0.4.12:多线程系统评估基准测试

答案1

可能是 sysbench 中的错误。我在这里找到了一个类似的标题:在 fileio 测试中使用 --file-extra-flags=direct 运行“准备”失败

摘抄

./sysbench --test=fileio --file-total-size=1G --file-test-mode=rndrw --max-time=18000 --max-requests=0 --num-threads=4 --rand-init=on --file-num=2 --file-fsync-freq=0 --file-block-size=16384 --report-interval=10 --file-extra-flags=direct prepare
sysbench 0.5: multi-threaded system evaluation benchmark

2 files, 524288Kb each, 1024Mb total
Creating files for the test...
Extra file open flags: 3
Creating file test_file.0
FATAL: Failed to write file! errno = 9 (Bad file descriptor)

我会向 SysBench 项目提交一个错误。您可以在这里这样做:

具体来说有一个右侧的链接用于报告错误

相关内容