pgsql: Fix performance regression in pg_strtointNN_safe functions
От | David Rowley |
---|---|
Тема | pgsql: Fix performance regression in pg_strtointNN_safe functions |
Дата | |
Msg-id | E1qQzNh-0001uI-Av@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Fix performance regression in pg_strtointNN_safe functions Between 6fcda9aba and 1b6f632a3, the pg_strtoint functions became quite a bit slower in v16, despite efforts in 6b423ec67 to speed these up. Since the majority of cases for these functions will only contain base-10 digits, perhaps prefixed by a '-', it makes sense to have a special case for this and just fall back on the more complex version which processes hex, octal, binary and underscores if the fast path version fails to parse the string. While we're here, update the header comments for these functions to mention that hex, octal and binary formats along with underscore separators are now supported. Author: Andres Freund, David Rowley Reported-by: Masahiko Sawada Reviewed-by: Dean Rasheed, John Naylor Discussion: https://postgr.es/m/CAD21AoDvDmUQeJtZrau1ovnT_smN940%3DKp6mszNGK3bq9yRN6g%40mail.gmail.com Backpatch-through: 16, where 6fcda9aba and 1b6f632a3 were added Branch ------ REL_16_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/4e2e75cd29eb7bc591afe30fd7425629fe2c5a5d Modified Files -------------- src/backend/utils/adt/numutils.c | 306 +++++++++++++++++++++++++++++++++++---- 1 file changed, 279 insertions(+), 27 deletions(-)
В списке pgsql-committers по дате отправления: