haproxy/reg-tests/checks/agent-check.vtc
Willy Tarreau 48d5ef363d REGTESTS: restrict execution to a single thread group
When threads are enabled and running on a machine with multiple CCX
or multiple nodes, thread groups are now enabled since 3.3-dev2, causing
load-balancing algorithms to randomly fail due to incoming connections
spreading over multiple groups and using different load balancing indexes.

Let's just force "thread-groups 1" into all configs when threads are
enabled to avoid this.
2025-06-30 18:54:35 +02:00

47 lines
1.2 KiB
Text

varnishtest "Health-checks: agent-check"
#REGTEST_TYPE=slow
feature ignore_unknown_macro
barrier b1 cond 2 -cyclic
barrier b2 cond 2 -cyclic
server s1 {
barrier b1 sync
recv 5
send "75%,maxconn:30,maint,down\n"
expect_close
barrier b2 sync
} -start
haproxy h1 -conf {
global
.if feature(THREAD)
thread-groups 1
.endif
defaults
mode tcp
timeout client "${HAPROXY_TEST_TIMEOUT-5s}"
timeout server "${HAPROXY_TEST_TIMEOUT-5s}"
timeout connect "${HAPROXY_TEST_TIMEOUT-5s}"
backend be1
log ${S1_addr}:${S1_port} daemon
option log-health-checks
server srv ${s1_addr}:${s1_port} weight 100 agent-check agent-addr ${s1_addr} agent-port ${s1_port} agent-send "pouet" agent-inter 100ms
} -start
haproxy h1 -cli {
send "show servers state"
expect ~ "be1 1 srv 127.0.0.1 2 0 100 100 [[:digit:]]+ 1 0 [[:digit:]] 0 [[:digit:]]+ 0 0 - ${s1_port} -"
send "show stat"
expect ~ "be1,srv,0,0,0,0,,"
barrier b1 sync
barrier b2 sync
send "show servers state"
expect ~ "be1 1 srv 127.0.0.1 0 1 75 100 [[:digit:]]+ 1 0 [[:digit:]] 0 [[:digit:]]+ 0 0 - ${s1_port} -"
send "show stat"
expect ~ "be1,srv,0,0,0,0,30"
}