Skip to content

Commit 28183f4

Browse files
committed
Test RDB merge on load with active replication
1 parent a0abc1e commit 28183f4

File tree

1 file changed

+27
-3
lines changed

1 file changed

+27
-3
lines changed

tests/integration/replication-active.tcl

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -215,14 +215,38 @@ start_server {tags {"active-repl"} overrides {active-replica yes}} {
215215
assert_equal {1} [$slave wait 1 500] { "value should propogate
216216
within 0.5 seconds" }
217217
exec kill -SIGSTOP $slave_pid
218-
after 3000
218+
after 3000
219219
# Ensure testkey1 is gone. Note, we can't do this directly as the normal commands lie to us
220220
# about what is actually in the dict. The only way to know is with a count from info
221-
assert_equal {1} [expr [string first {keys=1} [$master info keyspace]] >= 0] {"slave expired"}
221+
assert_equal {1} [expr [string first {keys=1} [$master info keyspace]] >= 0] {"slave expired"}
222222
}
223-
223+
224224
exec kill -SIGCONT $slave_pid
225225

226+
test {Active replica merge works when reconnecting} {
227+
$slave flushall
228+
$slave set testkey foo
229+
wait_for_condition 50 1000 {
230+
[string match *foo* [$master get testkey]]
231+
} else {
232+
fail "Replication failed to propogate"
233+
}
234+
$slave replicaof no one
235+
$master replicaof no one
236+
after 100
237+
$master set testkey baz
238+
after 100
239+
$slave set testkey bar
240+
after 100
241+
$slave replicaof $master_host $master_port
242+
after 1000
243+
$master replicaof $slave_host $slave_port
244+
after 1000
245+
246+
assert_equal {bar} [$slave get testkey]
247+
assert_equal {bar} [$master get testkey]
248+
}
249+
226250
test {Active replica different databases} {
227251
$master select 3
228252
$master set testkey abcd

0 commit comments

Comments
 (0)