Received: from localhost (unknown [200.46.204.183]) by mail.postgresql.org (Postfix) with ESMTP id 5171564FD35 for ; Tue, 9 Dec 2008 09:58:55 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 93092-10 for ; Tue, 9 Dec 2008 09:58:51 -0400 (AST) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from h7.zynet2.co.uk (h7.zynet2.co.uk [212.24.80.7]) by mail.postgresql.org (Postfix) with ESMTP id D64E764FC50 for ; Tue, 9 Dec 2008 09:58:49 -0400 (AST) Received: from h93.zynet2.co.uk (h93.zynet2.co.uk [212.24.80.93]) by h7.zynet2.co.uk (Postfix) with ESMTP id 8D2343B55B0 for ; Tue, 9 Dec 2008 13:58:44 +0000 (GMT) Received: from h66.zynet2.co.uk (h66.zynet2.co.uk [212.24.80.66]) (Authenticated sender: simon) by h93.zynet2.co.uk (Postfix) with ESMTP id 7A8A0679E7B for ; Tue, 9 Dec 2008 13:58:44 +0000 (GMT) From: Simon Waters Organization: ZyNet Limited To: pgsql-performance@postgresql.org Subject: Re: Need help with 8.4 Performance Testing Date: Tue, 9 Dec 2008 13:58:43 +0000 User-Agent: KMail/1.9.9 References: <200812071138.01215.josh@agliodbs.com> <493E6DBE.2040605@verizon.net> In-Reply-To: <493E6DBE.2040605@verizon.net> MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200812091358.43741.simonw@zynet.net> X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=0 tagged_above=0 required=5 tests=none X-Spam-Level: X-Archive-Number: 200812/68 X-Sequence-Number: 32104 On Tuesday 09 December 2008 13:08:14 Jean-David Beyer wrote: > > and even if they can, I do not know if postgres uses that ability. I doubt > it, since I believe (at least in Linux) a process can do that only if run > as root, which I imagine few (if any) users do. Disclaimer: I'm not a system programmer... I believe that at Linux kernel revision 2.6.8 and before processes need Posix capability CAP_IPC_LOCK, and 2.6.9 and after they need CAP_IPC_LOCK to lock more than RLIMIT_MEMLOCK. It is a capability, so a process can run as any user assuming it is started with or gained the capability. No idea if Postgres uses any of this, other than to protect security of certain password operations there is probably not much point. If key parts of your database are being paged out, get more RAM, if idle parts of your database are paged out, you probably could more usefully apply that RAM for something else. The Varnish cache design is the place to look for enlightenment on relying on the kernel paging (using memory mapped files) rather than trying to do it yourself, but then a proxy server is a lot simpler than a RDBMS. That said, Varnish is fast at what it does (reverse HTTP proxy) !