On Tue, Jul 29, 2014 at 9:26 PM, Amit Kapila <amit.kapil...@gmail.com> wrote:
> On Mon, Jul 28, 2014 at 11:33 PM, Fujii Masao <masao.fu...@gmail.com> wrote:
>> There is other side effect on this patch. With the patch, when reloading
>> the configurartion file, the server cannot warm an invalid setting value
>> if it's not the last setting of the parameter. This may cause problematic
>> situation as follows.
>>
>> 1. ALTER SYSTEM SET work_mem TO '1024kB';
>> 2. Reload the configuration file ---> success
>> 3. Then, a user accidentally adds "work_mem = '2048KB'" into
>> postgresql.conf
>>      The setting value '2048KB' is invalid, and the unit should be
>> 'kB' instead of 'KB'.
>> 4. Reload the configuration file ---> success
>>      The invalid setting is ignored because the setting of work_mem in
>>      postgresql.auto.conf is preferred. So a user cannot notice that
>> postgresql.conf
>>      has an invalid setting.
>> 5. Failover on shared-disk HA configuration happens, then PostgreSQL fails
>> to
>>     start up because of such an invalid setting. When PostgreSQL
>> starts up, the last
>>     setting is preferred. But all the settings are checked.
>
> The reason is that during startup DataDir is not set by the time server
> processes config file due to which we process .auto.conf file in second
> pass.  I think ideally it should ignore the invalid setting in such a case
> as it does during reload, however currently there is no good way to
> process .auto.conf  incase DataDir is not set, so we handle it separately
> in second pass.

What about picking up only data_directory at the first pass?

Regards,

-- 
Fujii Masao


-- 
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