"r client list" returning information on 3 connections. Fixed loop logic to check for omem in all connections.

This commit is contained in:
Jonathan Pickett
2013-10-29 19:21:02 -07:00
parent 07f2edf5e3
commit e2162fc107
+61 -29
View File
@@ -6,16 +6,24 @@ start_server {tags {"obuf-limits"}} {
$rd1 subscribe foo
set reply [$rd1 read]
assert {$reply eq "subscribe foo 1"}
set omem_max 0
set omem 0
while 1 {
r publish foo bar
set clients [split [r client list] "\r\n"]
set c [split [lindex $clients 1] " "]
if {![regexp {omem=([0-9]+)} $c - omem]} break
if {$omem > 200000} break
if {[r publish foo bar] == 1} {
set clients [split [r client list] "\r\n"]
foreach client $clients {
if {[regexp {omem=([0-9]+)} $client - omem_value]} {
if {$omem_value > $omem_max} {
set omem_max $omem_value
}
}
if {$omem_max > 200000} break
}
} else {
break;
}
}
assert {$omem >= 90000 && $omem < 200000}
assert {$omem_max >= 90000 && $omem_max < 200000}
$rd1 close
}
@@ -27,21 +35,33 @@ start_server {tags {"obuf-limits"}} {
set reply [$rd1 read]
assert {$reply eq "subscribe foo 1"}
set omem 0
set start_time 0
set time_elapsed 0
set omem_max 0
while 1 {
r publish foo bar
set clients [split [r client list] "\r\n"]
set c [split [lindex $clients 1] " "]
if {![regexp {omem=([0-9]+)} $c - omem]} break
if {$omem > 100000} {
if {$start_time == 0} {set start_time [clock seconds]}
set time_elapsed [expr {[clock seconds]-$start_time}]
if {$time_elapsed >= 5} break
}
if {[r publish foo bar] == 1} {
set clients [split [r client list] "\r\n"]
foreach client $clients {
if {[regexp {omem=([0-9]+)} $client - omem_value]} {
if {$omem_value > $omem_max} {
set omem_max $omem_value
}
}
}
if {$omem_max > 100000} {
if {$start_time == 0} {
set start_time [clock seconds]
}
set time_elapsed [expr {[clock seconds]-$start_time}]
if {$time_elapsed >= 5} {
break
}
}
} else {
break;
}
}
assert {$omem >= 100000 && $time_elapsed >= 5 && $time_elapsed <= 10}
assert {$omem_max >= 100000 && $time_elapsed >= 5 && $time_elapsed <= 10}
$rd1 close
}
@@ -53,21 +73,33 @@ start_server {tags {"obuf-limits"}} {
set reply [$rd1 read]
assert {$reply eq "subscribe foo 1"}
set omem 0
set start_time 0
set time_elapsed 0
set omem_max 0
while 1 {
r publish foo bar
set clients [split [r client list] "\r\n"]
set c [split [lindex $clients 1] " "]
if {![regexp {omem=([0-9]+)} $c - omem]} break
if {$omem > 100000} {
if {$start_time == 0} {set start_time [clock seconds]}
set time_elapsed [expr {[clock seconds]-$start_time}]
if {$time_elapsed >= 10} break
}
if {[r publish foo bar] == 1} {
set clients [split [r client list] "\r\n"]
foreach client $clients {
if {[regexp {omem=([0-9]+)} $client - omem_value]} {
if {$omem_value > $omem_max} {
set omem_max $omem_value
}
}
}
if {$omem_max > 100000} {
if {$start_time == 0} {
set start_time [clock seconds]
}
set time_elapsed [expr {[clock seconds]-$start_time}]
if {$time_elapsed >= 10} {
break
}
}
} else {
break;
}
}
assert {$omem >= 100000 && $time_elapsed < 6}
assert {$omem_max >= 100000 && $time_elapsed < 6}
$rd1 close
}
}