Re: Big script execution - Mailing list pgsql-general

From Igor Korot
Subject Re: Big script execution
Date
Msg-id CA+FnnTw0Q-DDusB9LVfQXYQer72Y8dZ3vxqv_1NMTqLCnH20hg@mail.gmail.com
Whole thread Raw
In response to Re: Big script execution  (Laurenz Albe <laurenz.albe@cybertec.at>)
Responses Re: Big script execution
List pgsql-general
Hi, Laurenz,

On Mon, Mar 10, 2025, 11:31 AM Laurenz Albe <laurenz.albe@cybertec.at> wrote:
On Mon, 2025-03-10 at 16:42 -0500, Igor Korot wrote:
> I am trying to execute a huge script (~40K lines) that will populate
> my database.
>
> The script starts with "BEGIN TRANSACTION" and will end
> with "COMMIT".
>
> however I'd like to rollback if there is an error encounter.
>
> When I execute it from the Terminal I do use
>
> -v ON_ERROR_STOP=1
>
> but I'd like to rolback the transaction so it starts a fresh every time.
>
> Is there some kind of
>
> ON ERROR ROLLBACK
>
> command I can put inside the script?

That happens automatically: if you are running the whole script in a
single transaction, any error will make the whole transaction roll back.

Will the tables also be deleted?
The CREATE TABLE statements are part of this big transaction.

Thank you.


Yours,
Laurenz Albe

pgsql-general by date:

Previous
From: Laurenz Albe
Date:
Subject: Re: Big script execution
Next
From: Christophe Pettus
Date:
Subject: Re: Big script execution