pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Heikki Linnakangas <heikki@enterprisedb.com>
To: David E. Wheeler <david@kineticode.com>
Cc: Greg Smith <gsmith@gregsmith.com>
Cc: Aidan Van Dyk <aidan@highrise.ca>
Cc: pgsql-hackers@postgresql.org
Subject: Re: Overhauling GUCS
Date: Fri, 06 Jun 2008 09:08:07 +0300
Message-ID: <4848D447.10005@enterprisedb.com> (raw)
In-Reply-To: <3F927D52-A0FD-4575-8D24-F0F70C459235@kineticode.com>
References: <Pine.GSO.4.64.0806041045520.2258@westnet.com>
	<29525.1212613052@sss.pgh.pa.us>
	<48472E47.7030701@dunslane.net>
	<Pine.GSO.4.64.0806042033120.3874@westnet.com>
	<20080605162400.GF16502@alvh.no-ip.org>
	<48481CBF.6040602@enterprisedb.com>
	<48481E3A.4010306@hagander.net>
	<Pine.GSO.4.64.0806051321360.27711@westnet.com>
	<20080605174209.GL16502@alvh.no-ip.org>
	<Pine.GSO.4.64.0806051452480.27254@westnet.com>
	<20080605212129.GI14498@yugib.highrise.ca>
	<Pine.GSO.4.64.0806051725550.10475@westnet.com>
	<3F927D52-A0FD-4575-8D24-F0F70C459235@kineticode.com>

David E. Wheeler wrote:
> On Jun 5, 2008, at 14:47, Greg Smith wrote:
> 
>> This is why there's the emphasis on preserving comments as they pass 
>> into the GUC structure and back to an output file.  This is one of the 
>> implementation details I haven't fully made up my mind on:  how to 
>> clearly label user comments in the postgresql.conf to distinguish them 
>> from verbose ones added to the file.  I have no intention of letting 
>> manual user edits go away; what I'm trying to do here (and this part 
>> is much more me than Josh) is make them more uniform such that they 
>> can co-exist with machine edits without either stomping on the other.  
>> Right now doing that is difficult, because it's impossible to tell the 
>> default comments from the ones the users added and the current comment 
>> structure bleeds onto the same lines as the settings.
> 
> How about a simple rule, such as that machine-generated comments start 
> with "##", while user comments start with just "#"? I think that I've 
> seen such a rule used before. At any rate, I think that, unless you have 
> some sort of line marker for machine-generated comments, there will be 
> no way to tell them apart from user comments.

What comments do we consider machine-generated? Just the ones used to 
comment out settings, like

#shared_buffers = 32MB

or something else?

If the automatic tool lets alone all other kind of comments, I think 
we're fine. In fact, it wouldn't necessarily need to modify those 
comments either, it could simply add a new setting line below that:

#shared_buffers = 32MB
shared_buffers = 1024MB

For extra safety, it could comment out old settings, perhaps with 
something like this:

#shared_buffers = 32MB
#shared_buffers = 1024MB  # commented out by wizard on 2008-06-05
shared_buffers = 2048MB

This would preserve a full change history in the file. It would become 
quite messy after a lo of changes, of course, but a user can trim the 
history by hand if he wants to.

Or perhaps we should explicitly mark the settings the tool has 
generated, and comment out:

#shared_buffers = 32MB   # commented out by wizard on 2008-06-05
shared_buffers = 1024MB  # automatically set by wizard on 2008-06-05

That way the tool could safely replace automatically set settings, 
without replacing manually set ones without leaving a clear trace of 
what happened.

-- 
   Heikki Linnakangas
   EnterpriseDB   http://www.enterprisedb.com



view thread (226+ messages)  latest in thread

Message-ID: <4848D447.10005@enterprisedb.com>
Permalink:  ../4848D447.10005@enterprisedb.com/
Also on:    postgresql.org/message-id/4848D447.10005@enterprisedb.com

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: heikki@enterprisedb.com, david@kineticode.com, gsmith@gregsmith.com, aidan@highrise.ca
  Subject: Re: Overhauling GUCS
  In-Reply-To: <4848D447.10005@enterprisedb.com>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox