Re: [bug] Wrong bool value parameter

Поиск
Список
Период
Сортировка
От wenjing
Тема Re: [bug] Wrong bool value parameter
Дата
Msg-id ED2A8D63-1AD7-40B2-8019-18CD206697C6@gmail.com
обсуждение исходный текст
Ответ на Re: [bug] Wrong bool value parameter  (Masahiko Sawada <masahiko.sawada@2ndquadrant.com>)
Ответы Re: [bug] Wrong bool value parameter  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-bugs

> 2020年4月7日 22:35,Masahiko Sawada <masahiko.sawada@2ndquadrant.com> 写道:
>
> On Tue, 7 Apr 2020 at 20:58, Euler Taveira
> <euler.taveira@2ndquadrant.com> wrote:
>>
>> On Tue, 7 Apr 2020 at 06:30, 曾文旌 <wjzeng2012@gmail.com> wrote:
>>>
>>> Do we allow such a bool parameter value? This seems puzzling to me.
>>>
>>>
>>> postgres=# create table t1(c1 int) with(autovacuum_enabled ='tr');
>>> CREATE TABLE
>>> postgres=# create table t2(c1 int) with(autovacuum_enabled ='fa');
>>> CREATE TABLE
>>> postgres=# \d+ t1
>>>                                    Table "public.t1"
>>> Column |  Type   | Collation | Nullable | Default | Storage | Stats target | Description
>>> --------+---------+-----------+----------+---------+---------+--------------+-------------
>>> c1     | integer |           |          |         | plain   |              |
>>> Access method: heap
>>> Options: autovacuum_enabled=tr
>>>
>> [don't post to multiple mailing lists]
>>
>> I'm not sure it is a bug. It certainly can be an improvement. Code as is does not cause issues although I concur
withyou that it is at least a strange syntax. It is like this at least since 2009 (commit ba748f7a11e). I'm not sure
parse_bool*is the right place to fix it because it could break code. IMHO the problem is that parse_one_reloption() is
usingthe value provided by user; it should test those (abbreviation) conditions and store "true" (for example) as bool
value.
It seems difficult to store a new bool value in parse_one_reloption. This is a string stored with ”autovacuum_enabled
=“.
any other ideas?

>>
>
> The document[1] states:
>
> Boolean: Values can be written as on, off, true, false, yes, no, 1, 0
> (all case-insensitive) or any unambiguous prefix of one of these.
>
> Given that PostgreSQL treats such values as boolean values it seems to
> me that it's a normal behavior.
>
> [1] https://www.postgresql.org/docs/devel/config-setting.html
>
> Regards,
>
> --
> Masahiko Sawada            http://www.2ndQuadrant.com/
> PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services




В списке pgsql-bugs по дате отправления:

Предыдущее
От: wenjing
Дата:
Сообщение: Re: [bug] Wrong bool value parameter
Следующее
От: Tom Lane
Дата:
Сообщение: Re: [bug] Wrong bool value parameter