diff options
author | antirez <antirez@gmail.com> | 2018-10-10 17:37:37 +0200 |
---|---|---|
committer | antirez <antirez@gmail.com> | 2018-10-10 17:37:41 +0200 |
commit | fbfd61b4714d3f0fabc6cb842b29e13262d5ab30 (patch) | |
tree | 8fba22d65225ba0607dcb5b7351eac843530ae6f /tests | |
parent | cfad5e45872a826fd751074ef564923cd7dfa25d (diff) | |
download | redis-fbfd61b4714d3f0fabc6cb842b29e13262d5ab30.tar.gz |
Test: cgroup propagation test also for NOACK variant.
Related to #5433.
Diffstat (limited to 'tests')
-rw-r--r-- | tests/unit/type/stream-cgroups.tcl | 68 |
1 files changed, 39 insertions, 29 deletions
diff --git a/tests/unit/type/stream-cgroups.tcl b/tests/unit/type/stream-cgroups.tcl index 34a724321..4df16c1a4 100644 --- a/tests/unit/type/stream-cgroups.tcl +++ b/tests/unit/type/stream-cgroups.tcl @@ -103,36 +103,46 @@ start_server { set master_port [srv -1 port] set slave [srv 0 client] - test {Consumer group last ID propagation to slave} { - $slave slaveof $master_host $master_port - wait_for_condition 50 100 { - [s 0 master_link_status] eq {up} - } else { - fail "Replication not started." - } - - $master del stream - $master xadd stream * a 1 - $master xadd stream * a 2 - $master xadd stream * a 3 - $master xgroup create stream mygroup 0 - - # Consume the first two items on the master - for {set j 0} {$j < 2} {incr j} { - set item [$master xreadgroup group mygroup myconsumer COUNT 1 STREAMS stream >] - set id [lindex $item 0 1 0 0] - assert {[$master xack stream mygroup $id] eq "1"} + foreach noack {0 1} { + test "Consumer group last ID propagation to slave (NOACK=$noack)" { + $slave slaveof $master_host $master_port + wait_for_condition 50 100 { + [s 0 master_link_status] eq {up} + } else { + fail "Replication not started." + } + + $master del stream + $master xadd stream * a 1 + $master xadd stream * a 2 + $master xadd stream * a 3 + $master xgroup create stream mygroup 0 + + # Consume the first two items on the master + for {set j 0} {$j < 2} {incr j} { + if {$noack} { + set item [$master xreadgroup group mygroup \ + myconsumer COUNT 1 NOACK STREAMS stream >] + } else { + set item [$master xreadgroup group mygroup \ + myconsumer COUNT 1 STREAMS stream >] + } + set id [lindex $item 0 1 0 0] + if {$noack == 0} { + assert {[$master xack stream mygroup $id] eq "1"} + } + } + + # Turn slave into master + $slave slaveof no one + + set item [$slave xreadgroup group mygroup myconsumer \ + COUNT 1 STREAMS stream >] + + # The consumed enty should be the third + set myentry [lindex $item 0 1 0 1] + assert {$myentry eq {a 3}} } - - # Turn slave into master - $slave slaveof no one - set master $slave - - set item [$master xreadgroup group mygroup myconsumer COUNT 1 STREAMS stream >] - - # The consumed enty should be the third - set myentry [lindex $item 0 1 0 1] - assert {$myentry eq {a 3}} } } } |