pgsql: Allow fractional input values for integer GUCs,and improve roun

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Allow fractional input values for integer GUCs,and improve roun
Дата
Msg-id E1h3U7T-0001PV-7W@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Allow fractional input values for integer GUCs, and improve rounding logic.

Historically guc.c has just refused examples like set work_mem = '30.1GB',
but it seems more useful for it to take that and round off the value to
some reasonable approximation of what the user said.  Just rounding to
the parameter's native unit would work, but it would lead to rather
silly-looking settings, such as 31562138kB for this example.  Instead
let's round to the nearest multiple of the next smaller unit (if any),
producing 30822MB.

Also, do the units conversion math in floating point and round to integer
(if needed) only at the end.  This produces saner results for inputs that
aren't exact multiples of the parameter's native unit, and removes another
difference in the behavior for integer vs. float parameters.

In passing, document the ability to use hex or octal input where it
ought to be documented.

Discussion: https://postgr.es/m/1798.1552165479@sss.pgh.pa.us

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/1a83a80a2fe5b559f85ed4830acb92d5124b7a9a

Modified Files
--------------
doc/src/sgml/config.sgml                 | 18 ++++++-
src/backend/utils/misc/guc.c             | 83 +++++++++++++++++++++-----------
src/test/regress/expected/reloptions.out |  5 +-
src/test/regress/sql/reloptions.sql      |  2 +-
4 files changed, 74 insertions(+), 34 deletions(-)


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

Предыдущее
От: Andrew Dunstan
Дата:
Сообщение: pgsql: Tweak wording on VARIADIC array doc patch.
Следующее
От: Michael Paquier
Дата:
Сообщение: pgsql: Add routine able to update the control file to src/common/