Summary
Allow configuration of timeout client for frontends and default values for timeouts.
Use case
We have a couple of applications that by necessity can only respond slowly to some requests (600s and more).
In an ideal world we could change the protocol to incorporate a heartbeat or a polling approach, but unfortunately we don't control the client applications.
The existing (but undocumented) backend timeout configuration is not enough, haproxy closes the connection after 50s with the current defaults.
Additional information
By manually modifying the generated haproxy.cfg file, we were able to check that setting timeout client 600s in the defaults section does indeed resolve the problem for us - until the next regeneration of the config.
Ideally there would be something like
set load-balancing haproxy service <frontend-name> timeout client <seconds>
to configure an individual frontend timeout (similar to what already works for setting the backend timeout).
And maybe
set load-balancing haproxy timeout server <seconds> set load-balancing haproxy timeout client <seconds>
to set the server wide defaults.