Peter Eisentraut <peter.eisentr...@2ndquadrant.com> writes: > Here is a patch that allows COMMIT inside cursor loops in PL/pgSQL. As > alluded to in earlier threads, this is done by converting such cursors > to holdable automatically. A special flag "auto-held" marks such > cursors, so we know to clean them up on exceptions.
I haven't really read this patch, but this bit jumped out at me: + Inside a cursor loop, <command>ROLLBACK</command> is not allowed. (That + would have to roll back the cursor query, thus invalidating the loop.) Say what? That seems to translate into "we have lost the ability to deal with errors". I don't think this is really what people are hoping to get out of the transactional-procedure facility. regards, tom lane