Обсуждение: Fix to expose a GUC variable, Log_disconnections, to outside of postgres.c

Поиск
Список
Период
Сортировка

Fix to expose a GUC variable, Log_disconnections, to outside of postgres.c

От
Satoshi Nagayasu
Дата:
Hi,

I just found that Log_disconnections value has not been
exposed to outside of postgres.c.
Despite that, Log_connections has already been exposed.

So, I'd like to add attached fix to touch the Log_disconnections
value in other modules.

Any comments?

Regards,
--
NAGAYASU Satoshi <snaga@uptime.jp>

Вложения

Re: Fix to expose a GUC variable, Log_disconnections, to outside of postgres.c

От
Tom Lane
Дата:
Satoshi Nagayasu <snaga@uptime.jp> writes:
> I just found that Log_disconnections value has not been
> exposed to outside of postgres.c.
> Despite that, Log_connections has already been exposed.

Why would an external module need to touch either one?
        regards, tom lane



Re: Fix to expose a GUC variable, Log_disconnections, to outside of postgres.c

От
Satoshi Nagayasu
Дата:
On 2015/07/09 13:06, Tom Lane wrote:
> Satoshi Nagayasu <snaga@uptime.jp> writes:
>> I just found that Log_disconnections value has not been
>> exposed to outside of postgres.c.
>> Despite that, Log_connections has already been exposed.
> 
> Why would an external module need to touch either one?

To check settings of GUC variables from a shared preload
library.

For example, I'd like to print "WARNING ...." in _PG_init()
when some GUC variable is disabled on postmaster startup.

Regards,
-- 
NAGAYASU Satoshi <snaga@uptime.jp>



Re: Fix to expose a GUC variable, Log_disconnections, to outside of postgres.c

От
Heikki Linnakangas
Дата:
On 07/09/2015 07:19 AM, Satoshi Nagayasu wrote:
> 
> On 2015/07/09 13:06, Tom Lane wrote:
>> Satoshi Nagayasu <snaga@uptime.jp> writes:
>>> I just found that Log_disconnections value has not been
>>> exposed to outside of postgres.c.
>>> Despite that, Log_connections has already been exposed.
>>
>> Why would an external module need to touch either one?
> 
> To check settings of GUC variables from a shared preload
> library.
> 
> For example, I'd like to print "WARNING ...." in _PG_init()
> when some GUC variable is disabled on postmaster startup.

I still have a hard time seeing why an extension would be interested in
Log_disconnections. But hey, extensions do strange things..

You could use GetConfigOption(). I'm not necessarily opposed to exposing
Log_disconnections, but with GetConfigOption() it will work with earlier
versions too.

- Heikki



Re: Fix to expose a GUC variable, Log_disconnections, to outside of postgres.c

От
Satoshi Nagayasu
Дата:

On 2015/07/09 15:30, Heikki Linnakangas wrote:
> On 07/09/2015 07:19 AM, Satoshi Nagayasu wrote:
>>
>> On 2015/07/09 13:06, Tom Lane wrote:
>>> Satoshi Nagayasu <snaga@uptime.jp> writes:
>>>> I just found that Log_disconnections value has not been
>>>> exposed to outside of postgres.c.
>>>> Despite that, Log_connections has already been exposed.
>>>
>>> Why would an external module need to touch either one?
>>
>> To check settings of GUC variables from a shared preload
>> library.
>>
>> For example, I'd like to print "WARNING ...." in _PG_init()
>> when some GUC variable is disabled on postmaster startup.
> 
> I still have a hard time seeing why an extension would be interested in
> Log_disconnections. But hey, extensions do strange things..

Definitely. :)

> You could use GetConfigOption(). I'm not necessarily opposed to exposing
> Log_disconnections, but with GetConfigOption() it will work with earlier
> versions too.

That's it! This is what I'm looking for. Thanks a lot. :)

Regards,
-- 
NAGAYASU Satoshi <snaga@uptime.jp>