Hi Krishna,

I found a bug explaining your observations and noticed a second one I have
not yet troubleshooted.

The bug causing your issue is that before moving the idle connection back to
the server's pool, we check the backend's http-reuse mode. But we're doing
this after calling http_reset_txn() which prepares the transaction to accept
a new request and sets the backend to the frontend. So we're in fact checking
the frontend's option. That's why it doesn't work in your case. That's a stupid
bug that I managed to fix.

While testing this I discovered another issue (problably less easy to fix,
I'll see). If the client closes an idle connection while there are still
other connections left, the server connection is not moved back to the
server's idle list and is closed. It's not dramatic, but is a waste of
resources since we could maintain that connection open. I'll see if we can
do something simple regarding this case.

I'll send a patch soon for the first case.

Thanks,
Willy


Reply via email to