Andres Freund <andres@2ndquadrant.com> writes:
> On Thursday, June 28, 2012 07:43:16 PM Tom Lane wrote:
>> I think it *would* be a good idea to mlock if we could. Setting shmem
>> large enough that it swaps has always been horrible for performance,
>> and in sysv-land there's no way to prevent that. But we can't error
>> out on permissions failure.
> Its also a very good method to get into hard to diagnose OOM situations
> though. Unless the machine is setup very careful and only runs postgres I
> don't think its acceptable to do that.
Well, the permissions angle is actually a good thing here. There is
pretty much no risk of the mlock succeeding on a box that hasn't been
specially configured --- and, in most cases, I think you'd need root
cooperation to raise postgres' RLIMIT_MEMLOCK. So I think we could try
to mlock without having any effect for 99% of users. The 1% who are
smart enough to raise the rlimit to something suitable would get better,
or at least more predictable, performance.
regards, tom lane