From 324b08eebdc03dbb89a6ba9d66a8d264a0a79f74 Mon Sep 17 00:00:00 2001 From: Madelyn Olson Date: Fri, 24 Jan 2025 05:38:04 -0800 Subject: [PATCH 1/2] Make sure disable pause after fork Signed-off-by: Madelyn Olson --- tests/integration/dual-channel-replication.tcl | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/integration/dual-channel-replication.tcl b/tests/integration/dual-channel-replication.tcl index 4ca70651a1..c0266c741f 100644 --- a/tests/integration/dual-channel-replication.tcl +++ b/tests/integration/dual-channel-replication.tcl @@ -871,6 +871,7 @@ start_server {tags {"dual-channel-replication external:skip"}} { fail "Primary did not free repl buf block after sync failure" } wait_and_resume_process 0 + $replica debug pause-after-fork 0 set res [wait_for_log_messages -1 {"*Unable to partial resync with replica * for lack of backlog*"} $loglines 20000 1] set loglines [lindex $res 0] } From 2db0e811fa02b6f7aa77085e91b3f1e01a842ce8 Mon Sep 17 00:00:00 2001 From: Madelyn Olson Date: Sun, 26 Jan 2025 04:54:21 -0800 Subject: [PATCH 2/2] Address comments Signed-off-by: Madelyn Olson --- tests/integration/dual-channel-replication.tcl | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/integration/dual-channel-replication.tcl b/tests/integration/dual-channel-replication.tcl index c0266c741f..aa8e61e9f3 100644 --- a/tests/integration/dual-channel-replication.tcl +++ b/tests/integration/dual-channel-replication.tcl @@ -850,7 +850,6 @@ start_server {tags {"dual-channel-replication external:skip"}} { $replica config set repl-timeout 60 $primary config set repl-backlog-size 1mb - $replica debug pause-after-fork 1 $primary debug populate 1000 primary 100000 # Set primary with a slow rdb generation, so that we can easily intercept loading # 10ms per key, with 1000 keys is 10 seconds @@ -858,6 +857,7 @@ start_server {tags {"dual-channel-replication external:skip"}} { test "Test dual-channel-replication primary gets cob overrun during replica rdb load" { set cur_client_closed_count [s -1 client_output_buffer_limit_disconnections] + $replica debug pause-after-fork 1 $replica replicaof $primary_host $primary_port wait_for_condition 500 1000 { [s -1 client_output_buffer_limit_disconnections] > $cur_client_closed_count @@ -870,6 +870,10 @@ start_server {tags {"dual-channel-replication external:skip"}} { } else { fail "Primary did not free repl buf block after sync failure" } + + # Increase the delay to make sure the replica doesn't start another sync + # after it resumes after the first one. + $primary config set repl-diskless-sync-delay 100 wait_and_resume_process 0 $replica debug pause-after-fork 0 set res [wait_for_log_messages -1 {"*Unable to partial resync with replica * for lack of backlog*"} $loglines 20000 1]