pgsql: Fix potential memory clobber in tsvector_concat().

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix potential memory clobber in tsvector_concat().
Дата
Msg-id E1Qx3ON-0006JE-Kz@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix potential memory clobber in tsvector_concat().

tsvector_concat() allocated its result workspace using the "conservative"
estimate of the sum of the two input tsvectors' sizes.  Unfortunately that
wasn't so conservative as all that, because it supposed that the number of
pad bytes required could not grow.  Which it can, as per test case from
Jesper Krogh, if there's a mix of lexemes with positions and lexemes
without them in the input data.  The fix is to assume that we might add
a not-previously-present pad byte for each and every lexeme in the two
inputs; which really is conservative, but it doesn't seem worthwhile to
try to be more precise.

This is an aboriginal bug in tsvector_concat, so back-patch to all
versions containing it.

Branch
------
REL9_0_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/20139f4f1cdd371d230d5389acf9ec8ff150b863

Modified Files
--------------
src/backend/utils/adt/tsvector_op.c |   36 +++++++++++++++++++++++++++++-----
1 files changed, 30 insertions(+), 6 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix potential memory clobber in tsvector_concat().
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Improve comments describing tsvector data structure.