Received: from localhost (unknown [200.46.204.183]) by developer.postgresql.org (Postfix) with ESMTP id 38D122E0098 for ; Mon, 2 Jun 2008 13:27:25 -0300 (ADT) Received: from developer.postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.183]) (amavisd-maia, port 10024) with ESMTP id 41709-01 for ; Mon, 2 Jun 2008 13:27:04 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from outmail136052.authsmtp.co.uk (outmail136052.authsmtp.co.uk [62.13.136.52]) by developer.postgresql.org (Postfix) with ESMTP id 6E64C2E003B for ; Mon, 2 Jun 2008 13:26:33 -0300 (ADT) Received: from mail.authsmtp.com (mail.authsmtp.com [62.13.128.187]) by punt2.authsmtp.com (8.14.2/8.13.8/Kp) with ESMTP id m52GQQWp035058; Mon, 2 Jun 2008 17:26:26 +0100 (BST) Received: from [192.168.0.3] (85-211-65-92.dyn.gotadsl.co.uk [85.211.65.92]) (authenticated bits=0) by mail.authsmtp.com (8.14.2/8.14.2/Kp) with ESMTP id m52GQIFh042850; Mon, 2 Jun 2008 17:26:19 +0100 (BST) Subject: Re: Overhauling GUCS From: Simon Riggs To: "Jignesh K. Shah" Cc: Josh Berkus , pgsql-hackers@postgresql.org In-Reply-To: <484418D9.5040608@sun.com> References: <48409D1E.3070208@agliodbs.com> <1212219274.4120.191.camel@ebony.site> <484418D9.5040608@sun.com> Content-Type: text/plain Date: Mon, 02 Jun 2008 17:29:17 +0100 Message-Id: <1212424157.4120.371.camel@ebony.site> Mime-Version: 1.0 X-Mailer: Evolution 2.12.0 Content-Transfer-Encoding: 7bit X-Server-Quench: a1bb1084-30c0-11dd-8155-001185d377ca X-AuthRoute: OCdxZQATClZOTQEd DAteCiNZVAwpPBRK HVkIKg5MJUcNSQVJ NksadRtFaAdbZ0xf HGQLW1xEUVp7W2V/ agMfZQBDYEtPQQNv TkFLXVBXFgB3AVJc AxxpM2AELwVCenZ1 ZQhjVnReEhV7JxR8 QkZQCG4GNmd9aWFL BF1QdgZRbQNKfx5N bwR8U3ReMCtlM3Bw LC8aFBMcBw5qYANL TxsNJE8WQEAEVhEB bCtq X-Authentic-SMTP: 61633235383639.squirrel.dmpriest.net.uk:1045/Kp X-Report-SPAM: If SPAM / abuse - report it at: http://www.authsmtp.com/abuse X-Virus-Status: No virus detected - but ensure you scan with your own anti-virus system! X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200806/61 X-Sequence-Number: 119174 On Mon, 2008-06-02 at 11:59 -0400, Jignesh K. Shah wrote: > > Simon Riggs wrote: > > > > Some other problems I see with GUCs > > > > * It's not possible to set one parameter depending upon the setting of > > another. > > > > To me this is more critical.. Most people I have seen will increase one > or few but not all parameters related to memory which can result in loss > of performance and productivity in figuring out. > > What happened to AvailRAM setting and base all memory gucs on that. > Ideally PostgreSQL should only create one big memory pool and allow all > other variables to change runtime via dba or some tuner process or > customized application as long as total is less than the allocated > shared_memory and local_memory settings. (This will also reduce the need > of restarting Postgres if a value needs to be changed) Agreed. Right now, we can't even do that in code, let alone in config file. If we had a smart_memory_config = on then we'd be able to say in the backend: if (smart_memory_config) { other_thing = 0.1 * Nbuffers; } but the GUCs are evaluated in alphabetical order, without any way of putting dependencies between them. So they are notionally orthogonal. -- Simon Riggs www.2ndQuadrant.com PostgreSQL Training, Services and Support