On Thu, 2009-10-15 at 19:58 -0400, Tom Lane wrote:
> Alvaro Herrera <alvherre@commandprompt.com> writes:
> > Hmm ... this is something that had not occured to me earlier. There is
> > a connection pool here (JDBCConnectionPool I'm told; hadn't heard about
> > that one) and there are about 100 backends permanently, not all of which
> > are always busy. Perhaps what's going on here is that some of them are
> > idle for long enough that the sinval queue gets full.
>
> Hm, that's definitely possible, and 8.1 did not have very good code for
> coping with sinval overrun. But it's not clear to me why that would
> affect the rel extension code path in particular.
I don't think this is an issue that affects the rel extension path
alone.
The typical behaviour is to attempt to assign work, if connection busy
then start a new connection and do work there. If the type of work being
done is similar then this behaviour means that contention leads to
additional contention. So *any* form of contention gets magnified.
-- Simon Riggs www.2ndQuadrant.com