On Sun, 2009-12-06 at 11:20 +0000, Simon Riggs wrote: > On Sun, 2009-12-06 at 12:32 +0200, Heikki Linnakangas wrote: > > > 3. The "Out of lock mem killer" in StandbyAcquireAccessExclusiveLock is > > quite harsh. It aborts all read-only transactions. It should be enough > > to kill just one random one, or maybe the one that's holding most locks. > > Also, if there still isn't enough shared memory after killing all > > backends, it goes into an infinite loop. I guess that shouldn't happen, > > but it seems a bit squishy anyway. It would be nice to differentiate > > between "out of shared mem" and "someone else is holding the lock" more > > accurately. Maybe add a new return value to LockAcquire() for "out of > > shared mem". > > OK, will abort infinite loop by adding new return value.
You had me for a minute, but there is no infinite loop. Once we start killing people it reverts to throwing an ERROR on an out of memory condition. -- Simon Riggs www.2ndQuadrant.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers