Hi, i am having a problem with a plperl function i am trying to write. (using 8.1.4) the function does a select (ca 30,000 rows) using spi_query($query); while (my $row = spi_fetchrow($handle)) and within the while loop inserts the record into a table using spi_exec_query($query); The initial select is pretty fast and first inserts very fast, but after a few thousand inserts the inserts start to slow down until it crawls. Writing the same in a normal perl script takes less than 90 seconds while the function is taking 10 minutes. My guess is that it is all memory related and was wondering if there is a memory leak (as I read in some mails) or if there is a better way to do what I want. Also is there a way to commit transactions within a stored procedure / function? I noticed that if I do a delete and insert within the same function that the deletes are not committed until the function returns. Thanks for any advice. Alex