Обсуждение: pgsql: Prevent memory leaks in parseRelOptions().

Поиск
Список
Период
Сортировка

pgsql: Prevent memory leaks in parseRelOptions().

От
Tom Lane
Дата:
Prevent memory leaks in parseRelOptions().

parseRelOptions() tended to leak memory in the caller's context.  Most
of the time this doesn't really matter since the caller's context is
at most query-lifespan, and the function won't be invoked very many times.
However, when testing with CLOBBER_CACHE_RECURSIVELY, the same relcache
entry can get rebuilt a *lot* of times in one query, leading to significant
intraquery memory bloat if it has any reloptions.  Noted while
investigating a related report from Tomas Vondra.

In passing, get rid of some Asserts that are redundant with the one
done by deconstruct_array().

As with other patches to avoid leaks in CLOBBER_CACHE testing, it doesn't
really seem worth back-patching this.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/a844c29966d7c0cd6a457e9324f175349bb12df0

Modified Files
--------------
src/backend/access/common/reloptions.c |   15 ++++++---------
1 file changed, 6 insertions(+), 9 deletions(-)