2009/10/29 Andrew Dunstan <and...@dunslane.net>:
>
>
> Pavel Stehule wrote:
>>
>> 2009/10/27 Simon Riggs <si...@2ndquadrant.com>:
>>
>>>
>>> On Tue, 2009-10-27 at 00:38 -0400, Greg Smith wrote:
>>>
>>>>
>>>> new feature
>>>>
>>>
>>> One additional point that would be useful is a way to match up the usage
>>> of custom_variable_classes with this new style of .conf file processing.
>>>
>>> At the moment if you wish to add a custom variable class everybody needs
>>> to edit the *same* parameter. Finding which one to edit could be a
>>> little difficult with a whole directory to search in.
>>>
>>> I propose a new form of processing for that variable: each new parameter
>>> instance is added to last one, rather than replacing it.
>>> e.g.
>>> custom_variable_class = 'x'
>>> custom_variable_class = 'y'
>>> custom_variable_class = 'z'
>>> is equivalent to
>>> custom_variable_classes = 'x,y,z'
>>>
>>> That allows NewFeatureX to drop in a file called "newfeaturex.conf",
>>> which looks like this
>>>
>>> custom_variable_class = 'newfeaturex'
>>> newfeaturex.param1 = x
>>> newfeaturex.param2 = y
>>> newfeaturex.param3 = z
>>>
>>> This requires no editing of any other files, just a straight drop in.
>>> That will make it much easier to produce real installers/deinstallers
>>> for add-in modules.
>>>
>>
>> I understand, but this behave is confusing. Maybe better is using some
>> trivial keywords like append, delete, reset
>>
>> so
>> append custom_variable_class = 'x'
>> append custom_variable_class = 'y'
>> append custom_variable_class = 'z'
>>
>> is custom_variable_classes = 'x,y,z'
>>
>>
>
> Why not allow something like += or .= instead of the = to denote appending
> to a list?
>
>   custom_variable_classes += 'x'
>
> seems a whole lot nicer to me.
>

I would see that as making the config more programatic so while that
might not look too weird to a developer, it could be confusing for a
DBA or system administrator.  I don't think that's how config files
should work, and it also adds gotchas like the following.

custom_variable_classes = 'x'
custom_variable_classes += 'y'
custom_variable_classes = 'z'

That would result in the first 2 assignments being undone.

Regards

Thom

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to