Andres Freund <and...@2ndquadrant.com> writes: > Independent of the rest of the discussion, I think there's one more > point: Trying to keep your system stable by *increasing* the priority of > normal backends is a bad idea. If you system gets into OOM land you need > to fix that, not whack who gets killed around. > The reason it makes sense to increase the priority of the postmaster is > that that *does* increase the stability by cleaning up resources and > restarting everything.
That's half of the reason. The other half is that, at least back when we added this code, the Linux kernel's victim-selection code disproportionately chose to kill the postmaster rather than any child backend, an outcome definitely not to be preferred. IIRC this was because it blamed the postmaster for the sum of childrens' memory sizes *including shared memory*, counting the shared memory over again for each child. I don't know whether our switch away from SysV shmem has helped that, or if recent kernel versions have less brain-dead OOM victim selection. I'm not terribly hopeful though. But anyway, yeah, the point of this feature is that the OOM priority of the postmaster, and *only* the postmaster, should be raised. Allowing unprivileged people to break that is not attractive on any level. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers