Re: COMMIT IN STORED PROCEDURE WHILE IN A LOOP - Mailing list pgsql-general

From Christophe Pettus
Subject Re: COMMIT IN STORED PROCEDURE WHILE IN A LOOP
Date
Msg-id 80B77102-84D3-4AD8-B138-1C0C3341855B@thebuild.com
Whole thread Raw
In response to Re: COMMIT IN STORED PROCEDURE WHILE IN A LOOP  (Ravi Krishna <s_ravikrishna@aol.com>)
Responses Re: COMMIT IN STORED PROCEDURE WHILE IN A LOOP
List pgsql-general

> On Oct 18, 2022, at 14:29, Ravi Krishna <s_ravikrishna@aol.com> wrote:
>
> > You can commit in a loop, but not in BEGIN / END block that has an exception handler:
> > that creates a subtransaction for the duration of the BEGIN / END.
>
> The reason I have to deal with error exception is that I want to ignore failure on a table and move on to next table.


Rather than have a loop inside the BEGIN / END, you could put the BEGIN EXCEPTION END inside the loop, catch the error,
storethe important parts of the exception in a variable, and then do the COMMIT after the END statement but before the
nextiteration of the loop.  A bit messier, but it gets the job done. 


pgsql-general by date:

Previous
From: Ravi Krishna
Date:
Subject: Re: COMMIT IN STORED PROCEDURE WHILE IN A LOOP
Next
From: Tom Lane
Date:
Subject: Re: COMMIT IN STORED PROCEDURE WHILE IN A LOOP