pgsql: Adjust bytea get_bit/set_bit to cope with bytea strings > 256MB.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Adjust bytea get_bit/set_bit to cope with bytea strings > 256MB.
Дата
Msg-id E1jLusY-0000xu-8K@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Adjust bytea get_bit/set_bit to cope with bytea strings > 256MB.

Since the existing bit number argument can't exceed INT32_MAX, it's
not possible for these functions to manipulate bits beyond the first
256MB of a bytea value.  However, it'd be good if they could do at
least that much, and not fall over entirely for longer bytea values.
Adjust the comparisons to be done in int64 arithmetic so that works.
Also tweak the error reports to show sane values in case of overflow.

Also add some test cases to improve the miserable code coverage
of these functions.

Apply patch to back branches only; HEAD has a better solution
as of commit 26a944cf2.

Extracted from a much larger patch by Movead Li

Discussion: https://postgr.es/m/20200312115135445367128@highgo.ca

Branch
------
REL_12_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/6e6b74a206c3b4ad9f22f4910b2e0ed9d922b312

Modified Files
--------------
src/backend/utils/adt/varlena.c       | 10 +++--
src/test/regress/expected/strings.out | 76 +++++++++++++++++++++++++++++++++++
src/test/regress/sql/strings.sql      | 23 +++++++++++
3 files changed, 105 insertions(+), 4 deletions(-)


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

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: pgsql: Support FETCH FIRST WITH TIES
Следующее
От: Alexander Korotkov
Дата:
Сообщение: pgsql: Implement waiting for given lsn at transaction start