Hi William,
Something seems to have been broken by below patch series. (when using
threads.?.)
*** h1 0.0 debug|[ALERT] 309/191142 (6588) : Current worker #1
(6589) exited with code 134 (Abort trap)
*** h1 0.0 debug|[ALERT] 309/191142 (6588) : exit-on-failure:
killing every workers with SIGTERM
Yes i'm using -W in the varnishtest, and yes that adds a 1 second delay
or something, but that never prevented this test from succeeding for me
before..
Can you take a look?
Regards,
PiBa-NL (Pieter)
Op 6-11-2018 om 18:33 schreef Willy Tarreau:
On Tue, Nov 06, 2018 at 05:37:09PM +0100, William Lallemand wrote:
Some improvements for the master-worker.
Thanks, whole series merged. I've replaced the warning with a qfprintf()
as we discussed so that it's less scary at boot :-) I think we'd benefit
from having ha_notice(), ha_info() and ha_debug() in complement to the
existing ha_alert() and ha_warning(). This would greatly help display
runtime info. And then you could replace your reload warning with a more
suitable notice.
Willy
# Checks that request and connection counters are properly kept
varnishtest "Connection counters check"
feature ignore_unknown_macro
server s1 {
rxreq
expect req.http.TESTsize == 10
txresp
} -repeat 4 -start
haproxy h1 -W -conf {
global
nbthread 3
stats socket /tmp/haproxy.socket level admin
defaults
mode http
log global
option httplog
timeout connect 3s
timeout client 40s
timeout server 40s
frontend fe1
maxconn 200
bind "fd@${fe_1}"
acl donelooping hdr(TEST) -m len 10
http-request set-header TEST "%[hdr(TEST)]x"
use_backend b2 if donelooping
default_backend b1
backend b1
server srv1 ${h1_fe_1_addr}:${h1_fe_1_port}
backend b2
fullconn 200
# haproxy 1.8 does not have the ,length converter.
#acl OK hdr(TEST) -m len 500
#http-request deny deny_status 200 if OK
#http-request deny deny_status 400
# haproxy 1.9 does have a ,length converter.
http-request set-header TESTsize "%[hdr(TEST),length]"
http-request del-header TEST
server srv2 ${s1_addr}:${s1_port}
} -start
barrier b1 cond 4
client c1 -connect ${h1_fe_1_sock} {
timeout 17
barrier b1 sync
txreq -url "/1"
rxresp
expect resp.status == 200
} -start
client c2 -connect ${h1_fe_1_sock} {
timeout 17
barrier b1 sync
txreq -url "/2"
rxresp
expect resp.status == 200
} -start
client c3 -connect ${h1_fe_1_sock} {
timeout 17
barrier b1 sync
txreq -url "/3"
rxresp
expect resp.status == 200
} -start
client c4 -connect ${h1_fe_1_sock} {
timeout 17
barrier b1 sync
txreq -url "/4"
rxresp
expect resp.status == 200
} -start
client c1 -wait
client c2 -wait
client c3 -wait
client c4 -wait
# allow a little time to close connections.
delay 1
haproxy h1 -cli {
send "show info"
expect ~ "CurrConns: 0 *\\nCumConns: 41*\\nCumReq: 81"
#send "show activity"
#expect ~ "hoi"
}