From: Greg Smith <gsmith@gregsmith.com>
To: Andreas Pflug <pgadmin@pse-consulting.de>
Cc: Decibel! <decibel@decibel.org>
Cc: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Peter Eisentraut <peter_e@gmx.net>
Cc: pgsql-hackers@postgresql.org, Josh Berkus <josh@agliodbs.com>
Subject: Re: Overhauling GUCS
Date: Wed, 4 Jun 2008 16:39:37 -0400 (EDT)
Message-ID: <Pine.GSO.4.64.0806041045520.2258@westnet.com> (raw)
In-Reply-To: <4846A483.8000001@pse-consulting.de>
References: <48409D1E.3070208@agliodbs.com>
<200806010032.53337.peter_e@gmx.net>
<Pine.GSO.4.64.0806020452220.26912@westnet.com>
<17932.1212415926@sss.pgh.pa.us>
<20080604131810.GH65238@decibel.org>
<4846A483.8000001@pse-consulting.de>
On Wed, 4 Jun 2008, Andreas Pflug wrote:
> 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 would recommend Apache's httpd.conf as an example of something that's
easy to edit and follow. Like any complex product, the comments in the
configuration file itself can't possibly be sufficient by themselves.
But in general I've found Apache's config file to have enough comments to
jog my memory when I'm editing it while not being overwhelming. They
provide enough detail that when I run into a setting I don't understand
there's enough context provided that it's easy to search for more
information.
Poking around with Google for a bit, here's a reasonable sample:
http://webdav.org/goliath/dav_on_x/apache.conf> IMHO the best compromise in machine and human readability is an XML format.
If the primary PostgreSQL configuration file becomes XML I will quit
working with the project. I'm not kidding. If you think XML is easy to
generate, edit by hand, and use revision control on, we are at such an
fundamental disagreement that I wouldn't even try and directly argue with
you. Instead I'll quote Eric Raymond:
"The most serious problem with XML is that it doesn't play well with
traditional Unix tools. Software that wants to read an XML format needs an
XML parser; this means bulky, complicated programs."
http://www.catb.org/esr/writings/taoup/html/ch05s02.html#id2907018
Let me suggest the following requirement instead which naturally rules it
out: it should be possible for a DBA-level coder to write a simple shell
script that does something useful with the configuration file in order for
having a text-based configuration to be useful in this context. To give a
simple example, I can write a single line [sed|awk|perl] command that will
let me update the value for one parameter in the current postgresql.conf
file. When you can give me a one-liner that does that on an XML file in
any shell language in that class, then we might have something to talk
about.
--
* Greg Smith gsmith@gregsmith.com http://www.gregsmith.com Baltimore, MD
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: gsmith@gregsmith.com, pgadmin@pse-consulting.de, decibel@decibel.org, tgl@sss.pgh.pa.us, peter_e@gmx.net, josh@agliodbs.com
Subject: Re: Overhauling GUCS
In-Reply-To: <Pine.GSO.4.64.0806041045520.2258@westnet.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