Need help understanding hashing in Haproxy

Hi, needed some help with understanding how hashing works in Haproxy.
We have the below config in one of our haproxy backend:

balance uri whole
hash-type consistent djb2 avalanche

Now if we make a request, lets say /download/v1/test.txt and its served by a backend server.
Since we have balance and hash type config, we expect subsequent requests for the same endpoint hashes to the same backend server.
However, how would this work if we have multiple haproxy instances behind a Loadbalancer which sends request to haproxy nodes in a round robin manner. 2nd request could land on another haproxy instance.
Given all the haproxy instances would have exactly the same backend config, would we get consistent hashing? Or each haproxy node behind the loadbalancer would have its own hashing algo and the same endpoint /download/v1/test.txt on 2 different haproxy nodes behind the same loadbalancer can land on different backend servers.

I confirm that is the point.

In haproxy 3.0 a bug was introduced that broke hashing assumptions, the behavior will be restored, but you need to know that haproxy instance will behave differently when using code that has this bug:

1 Like