I'm reading the HAProxy manual and there is a part that I'm not understanding:
request-learn
If this option is specified, then haproxy will be able to learn
the cookie found in the request in case the server does not
specify any in response. This is typically what happens with
PHPSESSID cookies, or when haproxy's session expires before
the application's session and the correct server is selected.
It is recommended to specify this option to improve reliability.
What does it mean "in case server does not specify any in response", specifically what is the server responding to, and what's the point of learning a cookie if the server doesn't specify one?
The issue of "when haproxy's session expires before the application's session" seems an important one but its handling by haproxy doesn't make sense to me here.