BUG/MEDIUM: sessions: Don't keep an extra idle connection in sessions.

When deciding if we keep an idle connection in the session, check if
the number of connections currently in the session is >= the max allowed,
not >, or we'll keep an extra connection.

This should be backported to 1.9 and 2.0.
This commit is contained in:
Olivier Houchard 2019-07-04 14:26:41 +02:00 committed by Olivier Houchard
parent 8d82db70a5
commit cee0389088
1 changed files with 1 additions and 1 deletions

View File

@ -120,7 +120,7 @@ static inline int session_add_conn(struct session *sess, struct connection *conn
/* Returns 0 if the session can keep the idle conn, -1 if it was destroyed, or 1 if it was added to the server list */
static inline int session_check_idle_conn(struct session *sess, struct connection *conn)
{
if (sess->idle_conns > sess->fe->max_out_conns) {
if (sess->idle_conns >= sess->fe->max_out_conns) {
/* We can't keep the connection, let's try to add it to the server idle list */
session_unown_conn(sess, conn);
conn->owner = NULL;