Oops, my fault. The list returned by ExecInsertIndexTuples() needs to be
freed otherwise lots of lists (one per row) will build up and not be freed
until the end of the query. This actually accounts for even more memory
than the after-trigger event queue. Patch attached.
Of course the after-trigger queue still uses a lot of memory for large
updates (I was working on a patch for that but ran out of time before
this commitfest started). This fix at least brings deferred index
constraints into line with FK constraints, in terms of memory usage.
pgsql-hackers by date
|Next:||From: Tom Lane||Date: 2010-01-31 16:03:01|
|Subject: Re: Memory leak in deferrable index constraints |
|Previous:||From: Matteo Beccati||Date: 2010-01-31 14:09:17|
|Subject: Re: mailing list archiver chewing patches|