diff options
author | antirez <antirez@gmail.com> | 2013-07-29 17:39:19 +0200 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2013-07-29 17:40:18 +0200 |
commit | f8e43aba783153092717349e77ec4bfde9353203 (patch) | |
tree | 55fb8be5e65bc483ce74fde736e53ac9ad739189 | |
parent | 13f7ade55176ec402010f81ef058cb78b42d5ada (diff) | |
download | redis-f8e43aba783153092717349e77ec4bfde9353203.tar.gz |
Test: regression test for issue #1221.
-rw-r--r-- | tests/integration/replication-4.tcl | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/tests/integration/replication-4.tcl b/tests/integration/replication-4.tcl index f84369f44..6db9ffe2b 100644 --- a/tests/integration/replication-4.tcl +++ b/tests/integration/replication-4.tcl @@ -96,3 +96,41 @@ start_server {tags {"repl"}} { } {NOREPLICAS*} } } + +start_server {tags {"repl"}} { + start_server {} { + set master [srv -1 client] + set master_host [srv -1 host] + set master_port [srv -1 port] + set slave [srv 0 client] + + test {First server should have role slave after SLAVEOF} { + $slave slaveof $master_host $master_port + wait_for_condition 50 100 { + [s 0 role] eq {slave} + } else { + fail "Replication not started." + } + } + + test {Replication: commands with many arguments (issue #1221)} { + # We now issue large MSET commands, that may trigger a specific + # class of bugs, see issue #1221. + for {set j 0} {$j < 100} {incr j} { + set cmd [list mset] + for {set x 0} {$x < 1000} {incr x} { + lappend cmd [randomKey] [randomValue] + } + $master {*}$cmd + } + + set retry 10 + while {$retry && ([$master debug digest] ne [$slave debug digest])}\ + { + after 1000 + incr retry -1 + } + assert {[$master dbsize] > 0} + } + } +} |