Well, the upgrade to 8.3 seemed to rid me of the command limit, but now I'm running out of memory. I have 2Gb physical and 8Gb swap (after adding 4Gb). Is there a way for me to run this outside of one huge transaction? This really shouldn't be using more than a few hundred megs of RAM (assuming cursor records are all stored in memory)... Thanks for the help, Carl On Saturday, March 07, 2009, Tom Lane wrote: > Carl Sopchak <carl.sopchak@xxxxxxxxxxxx> writes: > > I have written a PL/pgSQL function that performs these calculations by > > reading the needed data, calculating, and saving the results. When run > > over a smaller set of data, it works fine. But when I tried to run it > > over this larger set of data, I got the error message "ERROR: cannot > > have more than 2^32-1 commands in a transaction". > > > > I have looked into trying to control the transaction within my function, > > but apparently this results in nested transactions, which is not > > supported by pgsql 8.2 (my current version). > > Try updating to 8.3 --- it only counts plpgsql statements as separate > "commands" if they actually modified something on-disk. The 2^32 limit > is still there but it's a lot harder to hit. > > regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general