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 |
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 |