Re: postgres_fdw - should we tighten up batch_size, fetch_size options against non-numeric values?

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: postgres_fdw - should we tighten up batch_size, fetch_size options against non-numeric values?
Дата
Msg-id 3079566.1621345762@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: postgres_fdw - should we tighten up batch_size, fetch_size options against non-numeric values?  (Fujii Masao <masao.fujii@oss.nttdata.com>)
Ответы Re: postgres_fdw - should we tighten up batch_size, fetch_size options against non-numeric values?  (Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>)
Список pgsql-hackers
Fujii Masao <masao.fujii@oss.nttdata.com> writes:
> On 2021/05/17 18:58, Bharath Rupireddy wrote:
>> It looks like the values such as '123.456', '789.123' '100$%$#$#',
>> '9,223,372,' are accepted and treated as valid integers for
>> postgres_fdw options batch_size and fetch_size. Whereas this is not
>> the case with fdw_startup_cost and fdw_tuple_cost options for which an
>> error is thrown. Attaching a patch to fix that.

> This looks an improvement. But one issue is that the restore of
> dump file taken by pg_dump from v13 may fail for v14 with this patch
> if it contains invalid setting of fetch_size, e.g., "fetch_size '123.456'".
> OTOH, since batch_size was added in v14, it has no such issue.

Maybe better to just silently round to integer?  I think that's
what we generally do with integer GUCs these days, eg

regression=# set work_mem = 102.9;
SET
regression=# show work_mem;
 work_mem 
----------
 103kB
(1 row)

I agree with throwing an error for non-numeric junk though.
Allowing that on the grounds of backwards compatibility
seems like too much of a stretch.

            regards, tom lane



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

Предыдущее
От: Fujii Masao
Дата:
Сообщение: Re: postgres_fdw - should we tighten up batch_size, fetch_size options against non-numeric values?
Следующее
От: Heikki Linnakangas
Дата:
Сообщение: Multiple pg_waldump --rmgr options