Hi,guys:
Recently I use vdbench50407 to verify raw device,block size no alignment such as 1.5K or 3K ,run 10+seconds with -vr validate mode, data miscompare.
1.try another disks( intel NVME SSD P4610, SANGSUM NVME SSD 1725 ) also find this problem.
2.try another versions of vdbench (50407/50406/50403/503 ) also find this problem.
3.4K or 8K is OK.
Does vdbench50407 works no alignment IO? waiting for your messages,thanks.
config and run log:
root@kickseed:/usr/local/src/vdbench50407# cat para.stress.all158
data_errors=1
sd=sd1,lun=/dev/nvme0n1,range=(0,100)
wd=wd1,sd=sd1,openflags=o_direct,rdpct=50,seekpct=100,xfersize=3k
rd=run1,wd=wd1,iorate=max,elapsed=1m,interval=1
root@kickseed:/usr/local/src/vdbench50407# ./vdbench -f para.stress.all158 -vr
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Vdbench distribution: vdbench50407 Tue June 05 9:49:29 MDT 2018
For documentation, see 'vdbench.pdf'.
12:55:41.443 input argument scanned: '-fpara.stress.all158'
12:55:41.444 input argument scanned: '-vr'
12:55:41.494 Starting slave: /usr/local/src/vdbench50407/vdbench SlaveJvm -m localhost -n localhost-10-190306-12.55.41.424 -l localhost-0 -p 5570
12:55:41.736 All slaves are now connected
12:55:43.003 Starting RD=run1; I/O rate: Uncontrolled MAX; elapsed=60; For loops: None
12:55:43.374 localhost-0: 12:55:43.371
12:55:43.374 localhost-0: 12:55:43.372 Time of first corruption: Wed Mar 06 2019 12:55:43.371 CST
12:55:43.374 localhost-0: 12:55:43.372
12:55:43.374 localhost-0: 12:55:43.372 At least one Data Validation error has been detected.
12:55:43.374 localhost-0: 12:55:43.372
12:55:43.374 localhost-0: 12:55:43.372 Terminology:
12:55:43.374 localhost-0: 12:55:43.372 - Data block: a block of xfersize= bytes.
12:55:43.374 localhost-0: 12:55:43.372 - Key block: the smallest xfersize specified by the user which is the unit of
12:55:43.374 localhost-0: 12:55:43.372 data that Data Validation keeps track of.
12:55:43.375 localhost-0: 12:55:43.372 - Sector: 512 bytes of disk storage, regardless of actual storage sector size.
12:55:43.375 localhost-0: 12:55:43.372 - Lba: Logical Byte Address, not to be confused with Logical Block Address.
12:55:43.375 localhost-0: 12:55:43.372
12:55:43.375 localhost-0: 12:55:43.372
12:55:43.375 localhost-0: 12:55:43.372 The output starts with a summary of a data block, followed by a summary of each
12:55:43.375 localhost-0: 12:55:43.372 key block. If all sectors in a key block show a similar type of data corruption
12:55:43.375 localhost-0: 12:55:43.372 only the FIRST sector of the key block will be reported.
12:55:43.375 localhost-0: 12:55:43.372 For all other cases, ALL sectors will be reported.
12:55:43.375 localhost-0: 12:55:43.372
12:55:43.375 localhost-0: 12:55:43.372 Contents of the first 32 bytes of each sector:
12:55:43.376 localhost-0: 12:55:43.372
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x00 - 0x07: Byte offset of this disk block
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x08 - 0x0f: Timestamp: number of milliseconds since 1/1/1970
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x10 : Data Validation key from 1 - 126
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x11 : Checksum of timestamp
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x12 - 0x13: Reserved
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x14 - 0x1b: SD or FSD name in ASCII hexadecimal
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x1c - 0x1f: Owner ID when written
12:55:43.376 localhost-0: 12:55:43.372 Byte 0x20 - 0x1ff: 480 bytes of compression data pattern
12:55:43.377 localhost-0: 12:55:43.372
12:55:43.377 localhost-0: 12:55:43.372 On the left: the data that was expected ('.' marks unknown value).
12:55:43.377 localhost-0: 12:55:43.372 On the right: the data that was found.
12:55:43.377 localhost-0: 12:55:43.372
12:55:43.381 localhost-0: 12:55:43.377
12:55:43.381 localhost-0: 12:55:43.377
12:55:43.381 localhost-0: 12:55:43.377
12:55:43.381 localhost-0: 12:55:43.378 Corrupted data block for sd=sd1,lun=/dev/nvme0n1; lba: 131,820,681,216 (0x1eb11ff800) xfersize=3072
12:55:43.381 localhost-0: 12:55:43.378
12:55:43.381 localhost-0: 12:55:43.378 Data block has 1 key block(s) of 3072 bytes each.
12:55:43.381 localhost-0: 12:55:43.378 All key blocks are corrupted.
12:55:43.381 localhost-0: 12:55:43.378 Key block lba: 0x1eb11ff800
12:55:43.381 localhost-0: 12:55:43.378 Key block of 3,072 bytes has 6 512-byte sectors.
12:55:43.381 localhost-0: 12:55:43.378 Timeline:
12:55:43.381 localhost-0: 12:55:43.379 Wed Mar 06 2019 12:55:43.364 CST Sector last written. (As found in the first corrupted sector, timestamp is taken just BEFORE the actual write).
12:55:43.381 localhost-0: 12:55:43.379 Wed Mar 06 2019 12:55:43.368 CST Key block first found to be corrupted during a read-after-write.
12:55:43.381 localhost-0: 12:55:43.379
12:55:43.381 localhost-0: 12:55:43.379 2 of 6 sectors are corrupted.
12:55:43.381 localhost-0: 12:55:43.379 All 2 corrupted sectors will be reported.
12:55:43.381 localhost-0: 12:55:43.379
12:55:43.381 localhost-0: 12:55:43.379 Data Validation error for sd=sd1,lun=/dev/nvme0n1
12:55:43.381 localhost-0: 12:55:43.379 Block lba: 0x1eb11ff800; sector lba: 0x1eb1200000; Key block size: 3072; relative sector in data block: 0x04 ( 4)
12:55:43.381 localhost-0: 12:55:43.379 ===> Compression pattern miscompare.
12:55:43.382 localhost-0: 12:55:43.379 Timestamp found in sector: Wed Mar 06 2019 12:55:43.364 CST
12:55:43.382 localhost-0: 12:55:43.379 0x000 0000001e b1200000 ........ ........ 0000001e b1200000 00000169 515b7a04
12:55:43.382 localhost-0: 12:55:43.379 0x010 14..0000 20316473 20202020 00000000 14940000 20316473 20202020 00002471
12:55:43.382 localhost-0: 12:55:43.380 There are no mismatches in bytes 32-511
12:55:43.385 localhost-0: 12:55:43.383
12:55:43.385 localhost-0: 12:55:43.383 Data Validation error for sd=sd1,lun=/dev/nvme0n1
12:55:43.385 localhost-0: 12:55:43.384 Block lba: 0x1eb11ff800; sector lba: 0x1eb1200200; Key block size: 3072; relative sector in data block: 0x05 ( 5)
12:55:43.385 localhost-0: 12:55:43.384 ===> Compression pattern miscompare.
12:55:43.385 localhost-0: 12:55:43.384 Timestamp found in sector: Wed Mar 06 2019 12:55:43.364 CST
12:55:43.385 localhost-0: 12:55:43.384 0x000 0000001e b1200200 ........ ........ 0000001e b1200200 00000169 515b7a04
12:55:43.385 localhost-0: 12:55:43.384 0x010 14..0000 20316473 20202020 00000000 14940000 20316473 20202020 00002471
12:55:43.386 localhost-0: 12:55:43.384 There are no mismatches in bytes 32-511
12:55:43.389 localhost-0: 12:55:43.388 op: read lun: /dev/nvme0n1 lba: 131820681216 0x1EB11FF800 xfer: 3072 errno: 60003: '60003 A Data Validation error was discovered'
12:55:43.891
12:55:43.891 'data_errors=1' requested. Abort rd=run1 after last error.
12:55:43.891
java.lang.RuntimeException: 'data_errors=1' requested. Abort rd=run1 after last error.
at Vdb.common.failure(common.java:350)
at Vdb.common.failure(common.java:297)
at Vdb.ErrorLog.countErrorsOnMaster(ErrorLog.java:224)
at Vdb.SlaveOnMaster.processSlave(SlaveOnMaster.java:207)
at Vdb.SlaveOnMaster.run(SlaveOnMaster.java:42)