trace writes
This commit is contained in:
+15
-1
@@ -55,6 +55,20 @@ LD_PRELOAD="build/src/client/libfio_vitastor.so" \
|
||||
fio -thread -name=test -ioengine=build/src/client/libfio_vitastor.so -bsrange=4k-128k -blockalign=4k -direct=1 -iodepth=32 -fsync=256 -rw=randrw \
|
||||
-serialize_overlap=1 -randrepeat=0 -refill_buffers=1 -mirror_file=./testdata/bin/mirror.bin -etcd=$ETCD_URL -image=testimg -loops=10 -runtime=120
|
||||
|
||||
# Wait for active/clean
|
||||
wait_up 120
|
||||
|
||||
# Trigger scrub
|
||||
for i in $(seq 1 $PG_COUNT); do
|
||||
$ETCDCTL put /vitastor/pg/history/1/$i `$ETCDCTL get --print-value-only /vitastor/pg/history/1/$i | jq -s -c '(.[0] // {}) + {"next_scrub":1}'`
|
||||
done
|
||||
|
||||
# Wait for scrub to finish
|
||||
wait_condition 300 "$ETCDCTL get --prefix /vitastor/pg/history/ --print-value-only | jq -s -e '([ .[] | select(.next_scrub == 0 or .next_scrub == null) ] | length) == $PG_COUNT'" Scrubbing
|
||||
|
||||
# Check that everything is ok
|
||||
wait_up 1
|
||||
|
||||
qemu-img convert -S 4096 -p \
|
||||
-f raw "vitastor:etcd_host=127.0.0.1\:$ETCD_PORT/v3:image=testimg" \
|
||||
-O raw ./testdata/bin/read.bin
|
||||
@@ -64,7 +78,7 @@ if ! diff -q ./testdata/bin/read.bin ./testdata/bin/mirror.bin; then
|
||||
format_error Data lost during self-heal
|
||||
fi
|
||||
|
||||
if grep -qP 'Checksum mismatch|BUG' ./testdata/osd*.log; then
|
||||
if grep -qP 'Checksum mismatch|BUG|Scrub error' ./testdata/osd*.log; then
|
||||
format_error Checksum mismatches or BUGs detected during test
|
||||
fi
|
||||
|
||||
|
||||
Reference in New Issue
Block a user