Thomas Lockhart <lockhart@alumni.caltech.edu> writes:
>> Added to TODO:
>> * Unify configuration into one configuration file
> ... and that is a good example of database design because?? ;)
Good point ;-). OTOH, the existing mishmash of config files and
option-setting methods isn't a good example of any kind of design.
It "just grew".
One thing to consider while contemplating a grand unified config file
(GUC?) is that much of this stuff needs to be settable per-client.
It would be wrong to rip out whatever dynamic option-setting code
there is. Cleaning it up and making a more uniform interface to the
various options does sound like a good project though.
I'd want to see a paper design for how things should work before any
coding starts --- the existing methods do have some non-obvious
advantages. For example, even something as grotty as the PGOPTIONS
environment variable has its uses: you can pass options through to
a backend without needing explicit cooperation from your client
application.
regards, tom lane