Received: from localhost (unknown [200.46.204.183]) by developer.postgresql.org (Postfix) with ESMTP id 848062E007A for ; Wed, 4 Jun 2008 11:35:57 -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 07135-08 for ; Wed, 4 Jun 2008 11:35:45 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from yugib.highrise.ca (yugib.highrise.ca [205.150.199.213]) by developer.postgresql.org (Postfix) with ESMTP id AA5322E006F for ; Wed, 4 Jun 2008 11:35:51 -0300 (ADT) Received: from localhost (yugib.highrise.ca [205.150.199.213]) by yugib.highrise.ca (Postfix) with ESMTP id 2D213111E39; Wed, 4 Jun 2008 10:35:49 -0400 (EDT) Date: Wed, 4 Jun 2008 10:35:49 -0400 From: Aidan Van Dyk To: Andreas Pflug Cc: Decibel! , Tom Lane , Greg Smith , Peter Eisentraut , pgsql-hackers@postgresql.org, Josh Berkus Subject: Re: Overhauling GUCS Message-ID: <20080604143548.GE14498@yugib.highrise.ca> References: <48409D1E.3070208@agliodbs.com> <200806010032.53337.peter_e@gmx.net> <17932.1212415926@sss.pgh.pa.us> <20080604131810.GH65238@decibel.org> <4846A483.8000001@pse-consulting.de> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Mjqg7Yu+0hL22rav" Content-Disposition: inline In-Reply-To: <4846A483.8000001@pse-consulting.de> User-Agent: Mutt/1.5.12-2006-07-14 X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200806/144 X-Sequence-Number: 119257 --Mjqg7Yu+0hL22rav Content-Type: text/plain; charset=us-ascii Content-Disposition: inline * Andreas Pflug [080604 10:20]: > Hiding the storage of config parameters opaquely behind an API is > something I've been hating for a long time on win32. ;-) > When reading this thread, I'm wondering if anybody ever saw a config > file for a complex software product that was easily editable and > understandable. I don't know one. If there was one, it'd be nice to know > it so we can learn from it. PostreSQL, Apache, X.org They are all easily editable, and "understandable", in the sense that I understand that I'm supposed to edit the line, changing the value (following the comments list of accepted values) They are "less understandable" if you mean that I know the implications of any change I make. But guess what, having those values inputed through some other mechanism (like a GUI config file editor, a SQL statement, or a nice pgadmin-SQL-hiding-interface isn't going to change that part of "understandable". That part of understandable only comes through good documentation and reference material, which is universally applicable to any config method. > IMHO the best compromise in machine and human readability is an XML > format. It's easily decorateable with comments, easily interpreted and a > pg_settings view could enhance it with even more comments, so an editor > using pgsql functions (to read and write postresql.conf.xml) could be > enabled to supply comprehensive help. Well, In my past, I've generally not got around to installing and using software that reqired me to edit some jumble of XML. Ya, maybe I'm lucky. And since I've got a lot invested in PG, I'ld be forced to of PG moved to an XML config, but I'ld be forced to kicking and screaming... I just *know* that I'ld reload/restart postmaster some time, and the config file wouldn't be quite correct, and I'ld search for 10 minutes trying to find the extra (or lack) ", or missing closing /... But maybe most people are better at parsing XML than me. And that also may be because I've actively avoided it for so long ;-) I don't know *how* I'ld decorate my XML config file with comments and history the way I do my text-based #-commented config files. a. -- Aidan Van Dyk Create like a god, aidan@highrise.ca command like a king, http://www.highrise.ca/ work like a slave. --Mjqg7Yu+0hL22rav Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.1 (GNU/Linux) iD8DBQFIRqhEuVxNPsxNPScRAh+9AJ98N0tJgqSH8NNQgL3OXu9r94qgpgCff7AO JxV+kRg7s16HNNBuxGvEiEU= =xs4U -----END PGP SIGNATURE----- --Mjqg7Yu+0hL22rav--