pgsql: Fix permanent memory leak in autovacuum launcher

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема pgsql: Fix permanent memory leak in autovacuum launcher
Дата
Msg-id E1PFZma-0004ji-Tp@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Fix permanent memory leak in autovacuum launcher

get_database_list was uselessly allocating its output data, along some
created along the way, in a permanent memory context.  This didn't
matter when autovacuum was a single, short-lived process, but now that
the launcher is permanent, it shows up as a permanent leak.

To fix, make get_database list allocate its output data in the caller's
context, which is in charge of freeing it when appropriate; and the
memory leaked by heap_beginscan et al is allocated in a throwaway
transaction context.

Branch
------
REL9_0_STABLE

Details
-------
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=0f0294930420133c7254ac0e3b3a40b8ad74dc80

Modified Files
--------------
src/backend/postmaster/autovacuum.c |   20 +++++++++++++++++---
1 files changed, 17 insertions(+), 3 deletions(-)


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: pgsql: Use appendrel planning logic for top-level UNION ALL structures.
Следующее
От: Alvaro Herrera
Дата:
Сообщение: pgsql: Fix permanent memory leak in autovacuum launcher