possible memory leak with SRFs - Mailing list pgsql-hackers

From Nikhil Sontakke
Subject possible memory leak with SRFs
Date
Msg-id i2za301bfd91005050653n3a081161rde58ed28c3f16a7c@mail.gmail.com
Whole thread Raw
Responses Re: possible memory leak with SRFs
List pgsql-hackers
Hi,

I saw this behavior with latest GIT head:

create table xlarge(val numeric(19,0));
insert into xlarge values(generate_series(1,5));

The above generate series will return an int8 which will then be
casted to numeric (via int8_to_numericvar) before being inserted into
the table. I observed that the ExprContext memory associated with
econtext->ecxt_per_tuple_memory is slowly bloating up till the end of
the insert operation.

This becomes significant the moment we try to insert a significant
number of entries using this SRF. I can see the memory being consumed
by the PG backend slowly grow to a large percentage.

I see that the executor (take ExecResult as an example) does not reset
the expression context early if an SRF is churning out tuples. What
could be a good way to fix this?

Regards,
Nikhils
-- 
http://www.enterprisedb.com


pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: max_standby_delay considered harmful
Next
From: Dimitri Fontaine
Date:
Subject: Re: max_standby_delay considered harmful