Re: BUG #17504: psql --single-transaction -vON_ERROR_STOP=1 still commits after client-side error

From: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
To: michael(at)paquier(dot)xyz
Cc: christoph(dot)berg(at)credativ(dot)de, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #17504: psql --single-transaction -vON_ERROR_STOP=1 still commits after client-side error
Date: 2022-06-03 08:56:03
Message-ID: 20220603.175603.682874096867945240.horikyota.ntt@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Thanks for the suggestions!

At Thu, 2 Jun 2022 14:39:41 +0900, Michael Paquier <michael(at)paquier(dot)xyz> wrote in
> The change that you are sending would enforce this policy as Christoph
> would like. Some tests would be nice to check such behaviors, say in

Added a test.

> 001_basic.pl, but we also need to be careful when sending down queries
> with psql expected to fail because of SIGPIPE (c757a3d, 6d41dd0). The

This does not need to send a byte after the client-side failure. The
connection is rather living after failure in this case.

> docs need a refresh, they mention now that COMMIT is sent after the
> last command but that would not be the case anymore with this patch if
> there is a client-side error.

Agreed. Does the following work?

> It causes psql to issue a BEGIN command before the first such option
> and a COMMIT command after the last one, thereby wrapping all the
> commands into a single transaction.
+> If any of the commands fails, a ROLLBACK command is sent instead.
> This ensures that either all the commands complete successfully, or
> no changes are applied.

regards.

--
Kyotaro Horiguchi
NTT Open Source Software Center

Attachment Content-Type Size
do_not_commit_after_client-side_failure.patch text/x-patch 1.9 KB

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message John Naylor 2022-06-03 10:01:30 Re: Error installing Stack Builder on Windows 64bit
Previous Message Semab Tariq 2022-06-03 02:21:36 Re: BUG #17506: Issue with the downloading site