Possible bug? incorrect retries count when termination status is CR--

Hello! We recently updated our config and are now seeing some weird logs; first, we upgraded from 1.8 to 2.0, and second, we tightened up TLS algorithms and used a snippet from https://ssl-config.mozilla.org/ that changed us from http/1.1 only to prioritizing http/2. (alpn h2,http/1.1)

These are the only changes to our proxies that had been active and stable for years. Everything seems to be working great with the updates, but one odd side effect is that the logged number of retries seemed to increase. This is a metric we monitor pretty closely, since it’s a good one for tracking backend stability. The change to the retry metric happened exactly when we deployed the updates around 10/24:

Examining some representitive log entries that contained a nonzero retry stat, they look like this (some minor details tweaked for privacy):

2021-11-30T18:03:10+00:00 haproxy[28429]: xxx.xxx.xxx.xxx:59886 [30/Nov/2021:18:03:10.257] dynamic~ release-43-hotfix-1-default-service/-:- 0/-1/-1/-1/0 -1 0 CRLV=597D03AF - CR-- 153/153/1/0/3 0/0 {|dc93de64|597D03AF||Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:94.0) Gecko/20100101 Firefox/94.0|https://www.site.com/path||www.site.com||} {|||} "GET /bff/banners HTTP/2.0"

I haven’t included a config as it doesn’t even look like a configuration issue to me – it just doesn’t make sense! If CR-- means the client aborted while the proxy was waiting for a request, and no backends have been contacted, why would retries be 3 (the max)? This looks like a normal vanilla client abort.

Bug? (Version is 2.0.13-2ppa2~xenial 2020/04/09)