Run tests with antietcd
Test / buildenv (push) Successful in 11s
Details
Test / build (push) Failing after 2m28s
Details
Test / make_test (push) Has been skipped
Details
Test / npm_lint (push) Has been skipped
Details
Test / test_add_osd (push) Has been skipped
Details
Test / test_cas (push) Has been skipped
Details
Test / test_change_pg_count (push) Has been skipped
Details
Test / test_change_pg_count_ec (push) Has been skipped
Details
Test / test_change_pg_size (push) Has been skipped
Details
Test / test_create_nomaxid (push) Has been skipped
Details
Test / test_etcd_fail (push) Has been skipped
Details
Test / test_interrupted_rebalance (push) Has been skipped
Details
Test / test_interrupted_rebalance_imm (push) Has been skipped
Details
Test / test_interrupted_rebalance_ec (push) Has been skipped
Details
Test / test_interrupted_rebalance_ec_imm (push) Has been skipped
Details
Test / test_failure_domain (push) Has been skipped
Details
Test / test_snapshot (push) Has been skipped
Details
Test / test_snapshot_ec (push) Has been skipped
Details
Test / test_minsize_1 (push) Has been skipped
Details
Test / test_move_reappear (push) Has been skipped
Details
Test / test_rm (push) Has been skipped
Details
Test / test_snapshot_chain (push) Has been skipped
Details
Test / test_snapshot_chain_ec (push) Has been skipped
Details
Test / test_snapshot_down (push) Has been skipped
Details
Test / test_snapshot_down_ec (push) Has been skipped
Details
Test / test_splitbrain (push) Has been skipped
Details
Test / test_rebalance_verify (push) Has been skipped
Details
Test / test_rebalance_verify_imm (push) Has been skipped
Details
Test / test_rebalance_verify_ec (push) Has been skipped
Details
Test / test_rebalance_verify_ec_imm (push) Has been skipped
Details
Test / test_root_node (push) Has been skipped
Details
Test / test_switch_primary (push) Has been skipped
Details
Test / test_write (push) Has been skipped
Details
Test / test_write_xor (push) Has been skipped
Details
Test / test_write_no_same (push) Has been skipped
Details
Test / test_heal_pg_size_2 (push) Has been skipped
Details
Test / test_heal_ec (push) Has been skipped
Details
Test / test_heal_csum_32k_dmj (push) Has been skipped
Details
Test / test_heal_csum_32k_dj (push) Has been skipped
Details
Test / test_heal_csum_32k (push) Has been skipped
Details
Test / test_heal_csum_4k_dmj (push) Has been skipped
Details
Test / test_heal_csum_4k_dj (push) Has been skipped
Details
Test / test_heal_csum_4k (push) Has been skipped
Details
Test / test_osd_tags (push) Has been skipped
Details
Test / test_enospc (push) Has been skipped
Details
Test / test_enospc_xor (push) Has been skipped
Details
Test / test_enospc_imm (push) Has been skipped
Details
Test / test_enospc_imm_xor (push) Has been skipped
Details
Test / test_scrub (push) Has been skipped
Details
Test / test_scrub_zero_osd_2 (push) Has been skipped
Details
Test / test_scrub_xor (push) Has been skipped
Details
Test / test_scrub_pg_size_3 (push) Has been skipped
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Has been skipped
Details
Test / test_scrub_ec (push) Has been skipped
Details
Test / test_nfs (push) Has been skipped
Details
Test / buildenv (push) Successful in 11s
Details
Test / build (push) Failing after 2m28s
Details
Test / make_test (push) Has been skipped
Details
Test / npm_lint (push) Has been skipped
Details
Test / test_add_osd (push) Has been skipped
Details
Test / test_cas (push) Has been skipped
Details
Test / test_change_pg_count (push) Has been skipped
Details
Test / test_change_pg_count_ec (push) Has been skipped
Details
Test / test_change_pg_size (push) Has been skipped
Details
Test / test_create_nomaxid (push) Has been skipped
Details
Test / test_etcd_fail (push) Has been skipped
Details
Test / test_interrupted_rebalance (push) Has been skipped
Details
Test / test_interrupted_rebalance_imm (push) Has been skipped
Details
Test / test_interrupted_rebalance_ec (push) Has been skipped
Details
Test / test_interrupted_rebalance_ec_imm (push) Has been skipped
Details
Test / test_failure_domain (push) Has been skipped
Details
Test / test_snapshot (push) Has been skipped
Details
Test / test_snapshot_ec (push) Has been skipped
Details
Test / test_minsize_1 (push) Has been skipped
Details
Test / test_move_reappear (push) Has been skipped
Details
Test / test_rm (push) Has been skipped
Details
Test / test_snapshot_chain (push) Has been skipped
Details
Test / test_snapshot_chain_ec (push) Has been skipped
Details
Test / test_snapshot_down (push) Has been skipped
Details
Test / test_snapshot_down_ec (push) Has been skipped
Details
Test / test_splitbrain (push) Has been skipped
Details
Test / test_rebalance_verify (push) Has been skipped
Details
Test / test_rebalance_verify_imm (push) Has been skipped
Details
Test / test_rebalance_verify_ec (push) Has been skipped
Details
Test / test_rebalance_verify_ec_imm (push) Has been skipped
Details
Test / test_root_node (push) Has been skipped
Details
Test / test_switch_primary (push) Has been skipped
Details
Test / test_write (push) Has been skipped
Details
Test / test_write_xor (push) Has been skipped
Details
Test / test_write_no_same (push) Has been skipped
Details
Test / test_heal_pg_size_2 (push) Has been skipped
Details
Test / test_heal_ec (push) Has been skipped
Details
Test / test_heal_csum_32k_dmj (push) Has been skipped
Details
Test / test_heal_csum_32k_dj (push) Has been skipped
Details
Test / test_heal_csum_32k (push) Has been skipped
Details
Test / test_heal_csum_4k_dmj (push) Has been skipped
Details
Test / test_heal_csum_4k_dj (push) Has been skipped
Details
Test / test_heal_csum_4k (push) Has been skipped
Details
Test / test_osd_tags (push) Has been skipped
Details
Test / test_enospc (push) Has been skipped
Details
Test / test_enospc_xor (push) Has been skipped
Details
Test / test_enospc_imm (push) Has been skipped
Details
Test / test_enospc_imm_xor (push) Has been skipped
Details
Test / test_scrub (push) Has been skipped
Details
Test / test_scrub_zero_osd_2 (push) Has been skipped
Details
Test / test_scrub_xor (push) Has been skipped
Details
Test / test_scrub_pg_size_3 (push) Has been skipped
Details
Test / test_scrub_pg_size_6_pg_minsize_4_osd_count_6_ec (push) Has been skipped
Details
Test / test_scrub_ec (push) Has been skipped
Details
Test / test_nfs (push) Has been skipped
Details
parent
23a9aa93b5
commit
3484bc2785
|
@ -53,15 +53,18 @@ start_etcd()
|
||||||
eval ETCD${i}_PID=$!
|
eval ETCD${i}_PID=$!
|
||||||
}
|
}
|
||||||
|
|
||||||
for i in $(seq 1 $ETCD_COUNT); do
|
nodejs mon/tinyraft/antietcd.js &>./testdata/antietcd.log &
|
||||||
start_etcd $i
|
ANTIETCD_PID=$!
|
||||||
done
|
sleep 1
|
||||||
for i in {1..30}; do
|
#for i in $(seq 1 $ETCD_COUNT); do
|
||||||
${ETCD}ctl --endpoints=$ETCD_URL --dial-timeout=1s --command-timeout=1s member list >/dev/null && break
|
# start_etcd $i
|
||||||
if [[ $i = 30 ]]; then
|
#done
|
||||||
format_error "Failed to start etcd"
|
#for i in {1..30}; do
|
||||||
fi
|
# ${ETCD}ctl --endpoints=$ETCD_URL --dial-timeout=1s --command-timeout=1s member list >/dev/null && break
|
||||||
done
|
# if [[ $i = 30 ]]; then
|
||||||
|
# format_error "Failed to start etcd"
|
||||||
|
# fi
|
||||||
|
#done
|
||||||
|
|
||||||
echo leak:fio >> testdata/lsan-suppress.txt
|
echo leak:fio >> testdata/lsan-suppress.txt
|
||||||
echo leak:tcmalloc >> testdata/lsan-suppress.txt
|
echo leak:tcmalloc >> testdata/lsan-suppress.txt
|
||||||
|
|
|
@ -18,12 +18,33 @@ else
|
||||||
OSD_COUNT=${OSD_COUNT:-3}
|
OSD_COUNT=${OSD_COUNT:-3}
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
etcd_put()
|
||||||
|
{
|
||||||
|
local key=$(echo -n "$1" | base64 -w 0)
|
||||||
|
local value=$(echo -n "$2" | base64 -w 0)
|
||||||
|
curl -s -XPOST --json '{"key":"'"$key"'","value":"'"$value"'"}' http://localhost:12379/v3/kv/put
|
||||||
|
}
|
||||||
|
|
||||||
|
etcd_get()
|
||||||
|
{
|
||||||
|
local key=$(echo -n "$1" | base64 -w 0)
|
||||||
|
curl -s -XPOST --json '{"key":"'"$key"'"}' http://localhost:12379/v3/kv/range | jq -r '.kvs[].value | @base64d'
|
||||||
|
}
|
||||||
|
|
||||||
|
etcd_get_prefix()
|
||||||
|
{
|
||||||
|
local key=$(echo -n "$1" | base64 -w 0)
|
||||||
|
local end="$1"
|
||||||
|
end=$(echo -n "${end%%/}"0 | base64 -w 0)
|
||||||
|
curl -s -XPOST --json '{"key":"'"$key"'","range_end":"'"$end"'"}' http://localhost:12379/v3/kv/range | jq -r '.kvs[].value | @base64d'
|
||||||
|
}
|
||||||
|
|
||||||
if [ "$IMMEDIATE_COMMIT" != "" ]; then
|
if [ "$IMMEDIATE_COMMIT" != "" ]; then
|
||||||
NO_SAME="--journal_no_same_sector_overwrites true --journal_sector_buffer_count 1024 --disable_data_fsync 1 --immediate_commit all --log_level 10 --etcd_stats_interval 5"
|
NO_SAME="--journal_no_same_sector_overwrites true --journal_sector_buffer_count 1024 --disable_data_fsync 1 --immediate_commit all --log_level 10 --etcd_stats_interval 5"
|
||||||
$ETCDCTL put /vitastor/config/global '{"recovery_queue_depth":1,"recovery_tune_util_low":1,"immediate_commit":"all","client_enable_writeback":true,"client_max_writeback_iodepth":32'$GLOBAL_CONFIG'}'
|
etcd_put /vitastor/config/global '{"recovery_queue_depth":1,"recovery_tune_util_low":1,"immediate_commit":"all","client_enable_writeback":true,"client_max_writeback_iodepth":32'$GLOBAL_CONFIG'}'
|
||||||
else
|
else
|
||||||
NO_SAME="--journal_sector_buffer_count 1024 --log_level 10 --etcd_stats_interval 5 --min_flusher_count 16"
|
NO_SAME="--journal_sector_buffer_count 1024 --log_level 10 --etcd_stats_interval 5 --min_flusher_count 16"
|
||||||
$ETCDCTL put /vitastor/config/global '{"recovery_queue_depth":1,"recovery_tune_util_low":1,"client_enable_writeback":true,"client_max_writeback_iodepth":32'$GLOBAL_CONFIG'}'
|
etcd_put /vitastor/config/global '{"recovery_queue_depth":1,"recovery_tune_util_low":1,"client_enable_writeback":true,"client_max_writeback_iodepth":32'$GLOBAL_CONFIG'}'
|
||||||
fi
|
fi
|
||||||
|
|
||||||
start_osd_on()
|
start_osd_on()
|
||||||
|
@ -74,7 +95,7 @@ else
|
||||||
POOLCFG='"scheme":"replicated"'
|
POOLCFG='"scheme":"replicated"'
|
||||||
fi
|
fi
|
||||||
POOLCFG='"name":"testpool","failure_domain":"osd",'$POOLCFG
|
POOLCFG='"name":"testpool","failure_domain":"osd",'$POOLCFG
|
||||||
$ETCDCTL put /vitastor/config/pools '{"1":{'$POOLCFG',"pg_size":'$PG_SIZE',"pg_minsize":'$PG_MINSIZE',"pg_count":'$PG_COUNT'}}'
|
etcd_put /vitastor/config/pools '{"1":{'$POOLCFG',"pg_size":'$PG_SIZE',"pg_minsize":'$PG_MINSIZE',"pg_count":'$PG_COUNT'}}'
|
||||||
|
|
||||||
wait_up()
|
wait_up()
|
||||||
{
|
{
|
||||||
|
@ -82,10 +103,10 @@ wait_up()
|
||||||
local i=0
|
local i=0
|
||||||
local configured=0
|
local configured=0
|
||||||
while [[ $i -lt $sec ]]; do
|
while [[ $i -lt $sec ]]; do
|
||||||
if $ETCDCTL get /vitastor/config/pgs --print-value-only | jq -s -e '(. | length) != 0 and ([ .[0].items["1"][] |
|
if etcd_get /vitastor/config/pgs | jq -s -e '(. | length) != 0 and ([ .[0].items["1"][] |
|
||||||
select(((.osd_set | select(. != 0) | sort | unique) | length) == '$PG_SIZE') ] | length) == '$PG_COUNT; then
|
select(((.osd_set | select(. != 0) | sort | unique) | length) == '$PG_SIZE') ] | length) == '$PG_COUNT; then
|
||||||
configured=1
|
configured=1
|
||||||
if $ETCDCTL get /vitastor/pg/state/1/ --prefix --print-value-only | jq -s -e '[ .[] | select(.state == ["active"]) ] | length == '$PG_COUNT; then
|
if etcd_get_prefix /vitastor/pg/state/1/ | jq -s -e '[ .[] | select(.state == ["active"]) ] | length == '$PG_COUNT; then
|
||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -108,7 +129,7 @@ try_reweight()
|
||||||
{
|
{
|
||||||
osd=$1
|
osd=$1
|
||||||
w=$2
|
w=$2
|
||||||
$ETCDCTL put /vitastor/config/osd/$osd '{"reweight":'$w'}'
|
etcd_put /vitastor/config/osd/$osd '{"reweight":'$w'}'
|
||||||
sleep 3
|
sleep 3
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -133,7 +154,7 @@ wait_finish_rebalance()
|
||||||
sec=$1
|
sec=$1
|
||||||
check=$2
|
check=$2
|
||||||
check=${check:-'.state == ["active"] or .state == ["active", "left_on_dead"]'}
|
check=${check:-'.state == ["active"] or .state == ["active", "left_on_dead"]'}
|
||||||
check="$ETCDCTL get --prefix /vitastor/pg/state/ --print-value-only | jq -s -e '([ .[] | select($check) ] | length) == $PG_COUNT'"
|
check="etcd_get_prefix /vitastor/pg/state/ | jq -s -e '([ .[] | select($check) ] | length) == $PG_COUNT'"
|
||||||
wait_condition "$sec" "$check" Rebalance
|
wait_condition "$sec" "$check" Rebalance
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -13,14 +13,14 @@ start_osd 4
|
||||||
sleep 2
|
sleep 2
|
||||||
|
|
||||||
for i in {1..30}; do
|
for i in {1..30}; do
|
||||||
($ETCDCTL get /vitastor/config/pgs --print-value-only |\
|
(etcd_get /vitastor/config/pgs |\
|
||||||
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3","4"])') && \
|
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3","4"])') && \
|
||||||
($ETCDCTL get --prefix /vitastor/pg/state/ --print-value-only | jq -s -e '([ .[] | select(.state == ["active"]) ] | length) == '$PG_COUNT) && \
|
(etcd_get_prefix /vitastor/pg/state/ | jq -s -e '([ .[] | select(.state == ["active"]) ] | length) == '$PG_COUNT) && \
|
||||||
break
|
break
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
|
||||||
if ! ($ETCDCTL get /vitastor/config/pgs --print-value-only |\
|
if ! (etcd_get /vitastor/config/pgs |\
|
||||||
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3","4"])'); then
|
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3","4"])'); then
|
||||||
format_error "FAILED: OSD NOT ADDED INTO DISTRIBUTION"
|
format_error "FAILED: OSD NOT ADDED INTO DISTRIBUTION"
|
||||||
fi
|
fi
|
||||||
|
@ -35,14 +35,14 @@ build/src/vitastor-cli --etcd_address $ETCD_URL rm-osd --force 4
|
||||||
sleep 2
|
sleep 2
|
||||||
|
|
||||||
for i in {1..30}; do
|
for i in {1..30}; do
|
||||||
($ETCDCTL get /vitastor/config/pgs --print-value-only |\
|
(etcd_get /vitastor/config/pgs |\
|
||||||
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3"])') && \
|
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3"])') && \
|
||||||
($ETCDCTL get --prefix /vitastor/pg/state/ --print-value-only | jq -s -e '([ .[] | select(.state == ["active"] or .state == ["active", "left_on_dead"]) ] | length) == '$PG_COUNT'') && \
|
(etcd_get_prefix /vitastor/pg/state/ | jq -s -e '([ .[] | select(.state == ["active"] or .state == ["active", "left_on_dead"]) ] | length) == '$PG_COUNT'') && \
|
||||||
break
|
break
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
|
||||||
if ! ($ETCDCTL get /vitastor/config/pgs --print-value-only |\
|
if ! (etcd_get /vitastor/config/pgs |\
|
||||||
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3"])'); then
|
jq -s -e '([ .[0].items["1"] | map(.osd_set)[][] ] | sort | unique == ["1","2","3"])'); then
|
||||||
format_error "FAILED: OSD NOT REMOVED FROM DISTRIBUTION"
|
format_error "FAILED: OSD NOT REMOVED FROM DISTRIBUTION"
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -20,31 +20,31 @@ try_change()
|
||||||
done
|
done
|
||||||
echo --- Change PG count to $n --- >>testdata/mon.log
|
echo --- Change PG count to $n --- >>testdata/mon.log
|
||||||
|
|
||||||
$ETCDCTL put /vitastor/config/pools '{"1":{'$POOLCFG',"pg_size":'$PG_SIZE',"pg_minsize":'$PG_MINSIZE',"pg_count":'$n'}}'
|
etcd_put /vitastor/config/pools '{"1":{'$POOLCFG',"pg_size":'$PG_SIZE',"pg_minsize":'$PG_MINSIZE',"pg_count":'$n'}}'
|
||||||
|
|
||||||
for i in {1..60}; do
|
for i in {1..60}; do
|
||||||
($ETCDCTL get /vitastor/config/pgs --print-value-only | jq -s -e '(.[0].items["1"] | map((.osd_set | select(. > 0)) | length == 2) | length) == '$n) && \
|
(etcd_get /vitastor/config/pgs | jq -s -e '(.[0].items["1"] | map((.osd_set | select(. > 0)) | length == 2) | length) == '$n) && \
|
||||||
($ETCDCTL get --prefix /vitastor/pg/state/ --print-value-only | jq -s -e '([ .[] | select(.state == ["active"] or .state == ["active", "has_misplaced"]) ] | length) == '$n'') && \
|
(etcd_get_prefix /vitastor/pg/state/ | jq -s -e '([ .[] | select(.state == ["active"] or .state == ["active", "has_misplaced"]) ] | length) == '$n'') && \
|
||||||
break
|
break
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
|
||||||
# Wait for the rebalance to finish
|
# Wait for the rebalance to finish
|
||||||
for i in {1..60}; do
|
for i in {1..60}; do
|
||||||
($ETCDCTL get --prefix /vitastor/pg/state/ --print-value-only | jq -s -e '([ .[] | select(.state == ["active"]) ] | length) == '$n'') && \
|
(etcd_get_prefix /vitastor/pg/state/ | jq -s -e '([ .[] | select(.state == ["active"]) ] | length) == '$n'') && \
|
||||||
break
|
break
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
|
||||||
if ! ($ETCDCTL get /vitastor/config/pgs --print-value-only | jq -s -e '(.[0].items["1"] | map((.osd_set | select(. > 0)) | length == 2) | length) == '$n); then
|
if ! (etcd_get /vitastor/config/pgs | jq -s -e '(.[0].items["1"] | map((.osd_set | select(. > 0)) | length == 2) | length) == '$n); then
|
||||||
$ETCDCTL get /vitastor/config/pgs
|
etcd_get /vitastor/config/pgs
|
||||||
$ETCDCTL get --prefix /vitastor/pg/state/
|
etcd_get_prefix /vitastor/pg/state/
|
||||||
format_error "FAILED: $n PGS NOT CONFIGURED"
|
format_error "FAILED: $n PGS NOT CONFIGURED"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! ($ETCDCTL get --prefix /vitastor/pg/state/ --print-value-only | jq -s -e '([ .[] | select(.state == ["active"]) ] | length) == '$n); then
|
if ! (etcd_get_prefix /vitastor/pg/state/ | jq -s -e '([ .[] | select(.state == ["active"]) ] | length) == '$n); then
|
||||||
$ETCDCTL get /vitastor/config/pgs
|
etcd_get /vitastor/config/pgs
|
||||||
$ETCDCTL get --prefix /vitastor/pg/state/
|
etcd_get_prefix /vitastor/pg/state/
|
||||||
format_error "FAILED: $n PGS NOT UP"
|
format_error "FAILED: $n PGS NOT UP"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -53,7 +53,7 @@ try_change()
|
||||||
nobj=0
|
nobj=0
|
||||||
waittime=0
|
waittime=0
|
||||||
while [[ $nobj -ne $NOBJ && $waittime -lt 7 ]]; do
|
while [[ $nobj -ne $NOBJ && $waittime -lt 7 ]]; do
|
||||||
nobj=`$ETCDCTL get --prefix '/vitastor/pg/stats' --print-value-only | jq -s '[ .[].object_count ] | reduce .[] as $num (0; .+$num)'`
|
nobj=`etcd_get_prefix '/vitastor/pg/stats/' | jq -s '[ .[].object_count ] | reduce .[] as $num (0; .+$num)'`
|
||||||
if [[ $nobj -ne $NOBJ ]]; then
|
if [[ $nobj -ne $NOBJ ]]; then
|
||||||
waittime=$((waittime+1))
|
waittime=$((waittime+1))
|
||||||
sleep 1
|
sleep 1
|
||||||
|
|
Loading…
Reference in New Issue