@ -9,17 +9,17 @@ dd if=/dev/zero of=./testdata/test_osd4.bin bs=1024 count=1 seek=$((1024*1024-1)
dd if = /dev/zero of = ./testdata/test_osd5.bin bs = 1024 count = 1 seek = $(( 1024 * 1024 - 1 ))
dd if = /dev/zero of = ./testdata/test_osd6.bin bs = 1024 count = 1 seek = $(( 1024 * 1024 - 1 ))
build/src/vitastor-osd --osd_num 1 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd1.bin 2>/dev/null) & >./testdata/osd1.log &
build/src/vitastor-osd --osd_num 1 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd1.bin 2>/dev/null) 2> & 1 > >./testdata/osd1.log &
OSD1_PID = $!
build/src/vitastor-osd --osd_num 2 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd2.bin 2>/dev/null) & >./testdata/osd2.log &
build/src/vitastor-osd --osd_num 2 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd2.bin 2>/dev/null) 2> & 1 > >./testdata/osd2.log &
OSD2_PID = $!
build/src/vitastor-osd --osd_num 3 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd3.bin 2>/dev/null) & >./testdata/osd3.log &
build/src/vitastor-osd --osd_num 3 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd3.bin 2>/dev/null) 2> & 1 > >./testdata/osd3.log &
OSD3_PID = $!
build/src/vitastor-osd --osd_num 4 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd4.bin 2>/dev/null) & >./testdata/osd4.log &
build/src/vitastor-osd --osd_num 4 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd4.bin 2>/dev/null) 2> & 1 > >./testdata/osd4.log &
OSD4_PID = $!
build/src/vitastor-osd --osd_num 5 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd5.bin 2>/dev/null) & >./testdata/osd5.log &
build/src/vitastor-osd --osd_num 5 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd5.bin 2>/dev/null) 2> & 1 > >./testdata/osd5.log &
OSD5_PID = $!
build/src/vitastor-osd --osd_num 6 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd6.bin 2>/dev/null) & >./testdata/osd6.log &
build/src/vitastor-osd --osd_num 6 --bind_address 127.0.0.1 --etcd_address $ETCD_URL $( node mon/simple-offsets.js --format options --device ./testdata/test_osd6.bin 2>/dev/null) 2> & 1 > >./testdata/osd6.log &
OSD6_PID = $!
cd mon
@ -50,6 +50,10 @@ try_change()
{
n = $1
for i in { 1..6} ; do
echo --- Change PG count to $n --- >>testdata/osd$i .log
done
$ETCDCTL put /vitastor/config/pools '{"1":{"name":"testpool","scheme":"replicated","pg_size":2,"pg_minsize":2,"pg_count":' $n ',"failure_domain":"osd"}}'
for i in { 1..10} ; do
@ -77,6 +81,12 @@ try_change()
$ETCDCTL get --prefix /vitastor/pg/state/
format_error " FAILED: $n PGS NOT UP "
fi
# Check that no objects are lost !
nobj = ` $ETCDCTL get --prefix '/vitastor/pg/stats' --print-value-only | jq -s '[ .[].object_count ] | reduce .[] as $num (0; .+$num)' `
if [ " $nobj " -ne 1024 ] ; then
format_error " Data lost after changing PG count to $n : 1024 objects expected, but got $nobj "
fi
}
# 16 -> 32