I've noticed that sc0_conn_cur (tracking the current number of connections
for a request tracked based on and extracted field from the body) is much
higher in 2.2 than it was in 2.1 and seems to no longer be correct.

For example, on one relatively un-loaded load balancer which only has
around 940 total open TCP sockets (according to netstat) and where the
"Sessions" section for this proxy in the stats interface shows a Cur value
of 19 and a Max of 120, fetching the stick table through the control socket
shows rows with conn_cur in the thousands.

As far as I know, it should be impossible for conn_cur to be higher than
the total number of in-flight sessions on the proxy...

The relevant haproxy config looks like

stick-table type string len 32 size 512 expire 5m store
gpc0,gpc0_rate(5m),http_req_rate(10s),conn_cur peers lb
http-request track-sc0 req.hdr(Authorization)

My intuition is that this is probably a bug with peer synchronization
because it only seems to happen when the "peers lb" line as at the end of
the block.

-- 
James Brown
Engineer

Reply via email to