Replace DEBUG RESTART
with pause_server
and resume_server
(#652)
This commit is contained in:
parent
d309b9b235
commit
5d9d41868d
@ -43,20 +43,11 @@ proc check_server_response {server_id} {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# restart a server and wait for it to come back online
|
# restart a server and wait for it to come back online
|
||||||
proc restart_server_and_wait {server_id} {
|
proc fail_server {server_id} {
|
||||||
set node_timeout [lindex [R 0 CONFIG GET cluster-node-timeout] 1]
|
set node_timeout [lindex [R 0 CONFIG GET cluster-node-timeout] 1]
|
||||||
set result [catch {R $server_id DEBUG RESTART [expr 3*$node_timeout]} err]
|
pause_process [srv [expr -1*$server_id] pid]
|
||||||
|
after [expr 3*$node_timeout]
|
||||||
# Check if the error is the expected "I/O error reading reply"
|
resume_process [srv [expr -1*$server_id] pid]
|
||||||
if {$result != 0 && $err ne "I/O error reading reply"} {
|
|
||||||
fail "Unexpected error restarting server $server_id: $err"
|
|
||||||
}
|
|
||||||
|
|
||||||
wait_for_condition 100 100 {
|
|
||||||
[check_server_response $server_id] eq 1
|
|
||||||
} else {
|
|
||||||
fail "Server $server_id didn't come back online in time"
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
start_cluster 3 3 {tags {external:skip cluster} overrides {cluster-allow-replica-migration no cluster-node-timeout 1000} } {
|
start_cluster 3 3 {tags {external:skip cluster} overrides {cluster-allow-replica-migration no cluster-node-timeout 1000} } {
|
||||||
@ -91,8 +82,8 @@ start_cluster 3 3 {tags {external:skip cluster} overrides {cluster-allow-replica
|
|||||||
}
|
}
|
||||||
|
|
||||||
test "Migration target is auto-updated after failover in target shard" {
|
test "Migration target is auto-updated after failover in target shard" {
|
||||||
# Restart R1 to trigger an auto-failover to R4
|
# Trigger an auto-failover from R1 to R4
|
||||||
restart_server_and_wait 1
|
fail_server 1
|
||||||
# Wait for R1 to become a replica
|
# Wait for R1 to become a replica
|
||||||
wait_for_role 1 slave
|
wait_for_role 1 slave
|
||||||
# Validate final states
|
# Validate final states
|
||||||
@ -111,8 +102,8 @@ start_cluster 3 3 {tags {external:skip cluster} overrides {cluster-allow-replica
|
|||||||
}
|
}
|
||||||
|
|
||||||
test "Migration source is auto-updated after failover in source shard" {
|
test "Migration source is auto-updated after failover in source shard" {
|
||||||
# Restart R0 to trigger an auto-failover to R3
|
# Trigger an auto-failover from R0 to R3
|
||||||
restart_server_and_wait 0
|
fail_server 0
|
||||||
# Wait for R0 to become a replica
|
# Wait for R0 to become a replica
|
||||||
wait_for_role 0 slave
|
wait_for_role 0 slave
|
||||||
# Validate final states
|
# Validate final states
|
||||||
@ -261,8 +252,8 @@ start_cluster 3 5 {tags {external:skip cluster} overrides {cluster-allow-replica
|
|||||||
|
|
||||||
test "Empty-shard migration target is auto-updated after faiover in target shard" {
|
test "Empty-shard migration target is auto-updated after faiover in target shard" {
|
||||||
wait_for_role 6 master
|
wait_for_role 6 master
|
||||||
# Restart R6 to trigger an auto-failover to R7
|
# Trigger an auto-failover from R6 to R7
|
||||||
restart_server_and_wait 6
|
fail_server 6
|
||||||
# Wait for R6 to become a replica
|
# Wait for R6 to become a replica
|
||||||
wait_for_role 6 slave
|
wait_for_role 6 slave
|
||||||
# Validate final states
|
# Validate final states
|
||||||
@ -282,8 +273,8 @@ start_cluster 3 5 {tags {external:skip cluster} overrides {cluster-allow-replica
|
|||||||
|
|
||||||
test "Empty-shard migration source is auto-updated after faiover in source shard" {
|
test "Empty-shard migration source is auto-updated after faiover in source shard" {
|
||||||
wait_for_role 0 master
|
wait_for_role 0 master
|
||||||
# Restart R0 to trigger an auto-failover to R3
|
# Trigger an auto-failover from R0 to R3
|
||||||
restart_server_and_wait 0
|
fail_server 0
|
||||||
# Wait for R0 to become a replica
|
# Wait for R0 to become a replica
|
||||||
wait_for_role 0 slave
|
wait_for_role 0 slave
|
||||||
# Validate final states
|
# Validate final states
|
||||||
|
Loading…
x
Reference in New Issue
Block a user