I have stored proc that retrieves a bunch of data, stores it in temp =
table, computes all sorts of totals/averages/whatnots from the temp =
table, and inserts results in another table. It works fine (except I =
don't like wrapping all SQL statements in 'execute'), but multiple calls
=
to that proc from another procedure causes excessive memory usage =
(upwards of 400M), and server eventually runs out of swap space. I =
believe this is because PG caches transactions in RAM, and this =
particular one is a bit too big.=20
Your belief is incorrect.
You could be looking at a memory-leak bug. Or, if there are foreign
keys involving the tables, you could be looking at the list of pending
foreign key trigger events getting too large. There's not enough
information here to say.
I have no triggers defined on any of the tables, and no foreign keys that
could cause cascaded updates and stuff. Care to see full text of the proc?
It's pl/PgPerlU
Peter