Re: connslots and the pending queue

From: Tod Sambar <tsambar#asterpix.com>
Date: Thu, 25 Jun 2009 09:40:41 -0700


The connslots feature is terrific but there was/is one issue with our configuration.  Specifically, the pending queue for the servers in our backend queue always have a value of 0 (srv->nbpend), whereas, the pending queue for the backend proxy has an ever-accumulating value (px->nbpend).  The result of this is that the current connslots() calculation is always a value greater than or equal to the maxqueue values for each of the servers in the backend.

I modified the haproxy server with the following change just prior to the return 1 on the last line of acl_fetch_connslots:

    // Subtract all connections queued on the backend     test->i -= px->nbpend;

Does this seem like a reasonable patch to submit or might I have a configuration issue that results in all pending connections accumulating at the backend level rather than at the server level?

I see that if the session is not established the pending connection is always accumulated at the backend rather than the server -- since we disable keepalive for this particular application I would guess that's why there are no established sessions pending...

Thanks!
Tod Received on 2009/06/25 18:40

This archive was generated by hypermail 2.2.0 : 2009/06/25 18:45 CEST