"Stephen Denne" <Stephen(dot)Denne(at)datamail(dot)co(dot)nz> writes: > I altered the update statement slightly, and reran the query. > The altered query has been running over 3 hours now, > without using lots of memory (38M private bytes). > 2046 temp files were created (2.54GB worth), > which have recently changed from slowly growing in size > to very very slowly reducing in number.
Hmm. I think what that really means is you haven't got to the part of the query where the leak is :-(. In my attempt to reproduce this I found that 8.3 has introduced a memory leak into the RI trigger support, such that even if an UPDATE doesn't change the FK columns it's still likely to leak a few dozen bytes per updated row.
Please see if the attached patch makes it better for you.