pgsql: Fix performance problem when building a lossy tidbitmap.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Fix performance problem when building a lossy tidbitmap.
Дата
Msg-id E1Quqfp-0004BV-27@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix performance problem when building a lossy tidbitmap.

As pointed out by Sergey Koposov, repeated invocations of tbm_lossify can
make building a large tidbitmap into an O(N^2) operation.  To fix, make
sure we remove more than the minimum amount of information per call, and
add a fallback path to behave sanely if we're unable to fit the bitmap
within the requested amount of memory.

This has been wrong since the tidbitmap code was written, so back-patch
to all supported branches.

Branch
------
REL9_0_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/706493a1f7cbd9c7d3a792fd5066b55c145b9b01

Modified Files
--------------
src/backend/nodes/tidbitmap.c |   22 +++++++++++++++++++---
1 files changed, 19 insertions(+), 3 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix performance problem when building a lossy tidbitmap.
Следующее
От: Tom Lane
Дата:
Сообщение: pgsql: Fix performance problem when building a lossy tidbitmap.