summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOran Agra <oran@redislabs.com>2020-04-28 09:18:01 +0300
committerantirez <antirez@gmail.com>2020-04-28 11:20:15 +0200
commitea63aea72d829a330a904668c847e600debbe626 (patch)
tree631c0c1787af79f6b287ef4c6618399d1beeb7ba
parent64e588bfabcd0cf0a8f862276fd7ea07e00756c3 (diff)
downloadredis-ea63aea72d829a330a904668c847e600debbe626.tar.gz
fix loading race in psync2 tests
-rw-r--r--tests/integration/psync2-pingoff.tcl1
-rw-r--r--tests/integration/psync2-reg.tcl5
-rw-r--r--tests/integration/psync2.tcl10
3 files changed, 15 insertions, 1 deletions
diff --git a/tests/integration/psync2-pingoff.tcl b/tests/integration/psync2-pingoff.tcl
index 1cea290e7..420747d21 100644
--- a/tests/integration/psync2-pingoff.tcl
+++ b/tests/integration/psync2-pingoff.tcl
@@ -20,6 +20,7 @@ start_server {} {
$R(1) replicaof $R_host(0) $R_port(0)
$R(0) set foo bar
wait_for_condition 50 1000 {
+ [status $R(1) master_link_status] == "up" &&
[$R(0) dbsize] == 1 && [$R(1) dbsize] == 1
} else {
fail "Replicas not replicating from master"
diff --git a/tests/integration/psync2-reg.tcl b/tests/integration/psync2-reg.tcl
index b5ad021e2..71a1c0eb2 100644
--- a/tests/integration/psync2-reg.tcl
+++ b/tests/integration/psync2-reg.tcl
@@ -28,7 +28,10 @@ start_server {} {
$R(2) slaveof $R_host(0) $R_port(0)
$R(0) set foo bar
wait_for_condition 50 1000 {
- [$R(1) dbsize] == 1 && [$R(2) dbsize] == 1
+ [status $R(1) master_link_status] == "up" &&
+ [status $R(2) master_link_status] == "up" &&
+ [$R(1) dbsize] == 1 &&
+ [$R(2) dbsize] == 1
} else {
fail "Replicas not replicating from master"
}
diff --git a/tests/integration/psync2.tcl b/tests/integration/psync2.tcl
index 4e1189e0b..5fe29caba 100644
--- a/tests/integration/psync2.tcl
+++ b/tests/integration/psync2.tcl
@@ -67,6 +67,16 @@ start_server {} {
lappend used $slave_id
}
+ # Wait for replicas to sync. so next loop won't get -LOADING error
+ wait_for_condition 50 1000 {
+ [status $R([expr {($master_id+1)%5}]) master_link_status] == "up" &&
+ [status $R([expr {($master_id+2)%5}]) master_link_status] == "up" &&
+ [status $R([expr {($master_id+3)%5}]) master_link_status] == "up" &&
+ [status $R([expr {($master_id+4)%5}]) master_link_status] == "up"
+ } else {
+ fail "Replica not reconnecting"
+ }
+
# 3) Increment the counter and wait for all the instances
# to converge.
test "PSYNC2: cluster is consistent after failover" {