pgsql: Fix array size allocation for HashAggregate hash keys.
От | Andrew Gierth |
---|---|
Тема | pgsql: Fix array size allocation for HashAggregate hash keys. |
Дата | |
Msg-id | E1hTp28-0002eD-CH@gemulon.postgresql.org обсуждение исходный текст |
Список | pgsql-committers |
Fix array size allocation for HashAggregate hash keys. When there were duplicate columns in the hash key list, the array sizes could be miscomputed, resulting in access off the end of the array. Adjust the computation to ensure the array is always large enough. (I considered whether the duplicates could be removed in planning, but I can't rule out the possibility that duplicate columns might have different hash functions assigned. Simpler to just make sure it works at execution time regardless.) Bug apparently introduced in fc4b3dea2 as part of narrowing down the tuples stored in the hashtable. Reported by Colm McHugh of Salesforce, though I didn't use their patch. Backpatch back to version 10 where the bug was introduced. Discussion: https://postgr.es/m/CAFeeJoKKu0u+A_A9R9316djW-YW3-+Gtgvy3ju655qRHR3jtdA@mail.gmail.com Branch ------ REL_10_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/99efd8d727b0662e152daa2ccd1dcc668ac36056 Modified Files -------------- src/backend/executor/nodeAgg.c | 29 ++++++++++++++++++++++------- src/test/regress/expected/aggregates.out | 18 ++++++++++++++++++ src/test/regress/sql/aggregates.sql | 7 +++++++ 3 files changed, 47 insertions(+), 7 deletions(-)
В списке pgsql-committers по дате отправления: