Re: ALTER SYSTEM SET command to change postgresql.conf parameters (RE: Proposal for Allow postgresql.conf values to be changed via SQL [review])
Alvaro Herrera <alvherre@2ndquadrant.com>
From: Alvaro Herrera <alvherre@2ndquadrant.com>
To: Stephen Frost <sfrost@snowman.net>
Cc: Amit Kapila <amit.kapila16@gmail.com>,
Robert Haas <robertmhaas@gmail.com>,
Dimitri Fontaine <dimitri@2ndquadrant.fr>,
Andres Freund <andres@2ndquadrant.com>,
Josh Berkus <josh@agliodbs.com>, Tom Lane <tgl@sss.pgh.pa.us>,
Fujii Masao <masao.fujii@gmail.com>,
"pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2013-08-20T15:14:38Z
Lists: pgsql-hackers
Stephen Frost escribió: > * Amit Kapila (amit.kapila16@gmail.com) wrote: > > So let me try to explain what I understood from above: > > > > 1. enable_alter_system a new GUC whose default value =off. > > 2. Alter System will check this variable and return error (not > > allowed), if this parameter is off. > > 3. Now if user enables include directive in postgresql.conf, it will > > enable Alter System as value of > > enable_alter_system is on. > > 4. User can run Alter System command to disable Alter System > > "enable_alter_system = off". > > Now even though include directive is enabled, but new Alter System > > commands will not work, however > > existing parameter's take into effect on restart/sighup. > > Yes. Not sure that it'd be terribly likely for a user to do that, but > if they do it, so be it. With this design, if you put enable_alter_system=off in auto.conf, there is no way for the user to enable alter system again short of editing a file in the data directory. I think this is one of the things that was "forbidden" by policy; only files in the config directory needs to be edited. What I was proposing upthread is that enable_alter_system=off/on would be present in postgresql.conf, and there is no include line for auto.conf. That way, if the user wishes to enable/disable the feature, they need to edit postgresql.conf to do so. ALTER SYSTEM doesn't offer a way to disable itself. If ALTER SYSTEM is disabled via enable_alter_system=off in postgresql.conf, the settings in auto.conf are not read. -- Álvaro Herrera http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services