Tom Lane wrote:
> "Nigel J. Andrews" <nandrews@investsystems.co.uk> writes:
> > I was taking the line that the last slots in the array are
> > reserved. Those are not going to be taken by non su connections.
>
> But that doesn't do the job, does it? My view of the feature is that
> when there are at least MaxBackends - ReservedBackends slots in use (by
> either su or non-su connections) then no new non-su jobs should be let
> in. For example, if the system is full (with a mix of su and non-su
> jobs) and one non-su job quits, don't we want to hold that slot for a
> possible su connection?
>
> Your approach does have the advantage of being very cheap to test
> (I think my semantics would require counting the active backends),
> but I'm not sure that it really does what we want.
Tom is right. If the last two slots are held by two long-running
super-user backends, and the slots fill, there will be no reserved
slots. The trick is that when the maximum number of backends is almost
exceeded, only let the supuer-user in.
--
Bruce Momjian | http://candle.pha.pa.us
pgman@candle.pha.pa.us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073