summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2022-06-10 20:34:25 +0000
committerTom Lane2022-06-10 20:34:25 +0000
commitf25b5519c99a68324b147dad15b68b1a3bd378ad (patch)
treedfee3ac4d40576954fca41e0a62807eae049299c
parent03fa84ac7c9239a18b7953d49acedd80f6aaccee (diff)
Revert "Fix psql's single transaction mode on client-side errors with -c/-f switches".
This reverts commits a04ccf6df et al. in the back branches only. There was some disagreement already over whether to back-patch 157f8739a, on the grounds that it is the sort of behavioral change that we don't like to back-patch. Furthermore, it now looks like the logic needs some more work, which we don't have time for before the upcoming 14.4 release. Revert for now, and perhaps reconsider later. Discussion: https://postgr.es/m/17504-76b68018e130415e@postgresql.org
-rw-r--r--doc/src/sgml/ref/psql-ref.sgml6
-rw-r--r--src/bin/psql/startup.c4
2 files changed, 3 insertions, 7 deletions
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index e522113ab2a..d14f0581e60 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -591,10 +591,8 @@ EOF
<application>psql</application> to issue a <command>BEGIN</command> command
before the first such option and a <command>COMMIT</command> command after
the last one, thereby wrapping all the commands into a single
- transaction. If any of the commands fails, a
- <command>ROLLBACK</command> command is sent instead. This ensures that
- either all the commands complete successfully, or no changes are
- applied.
+ transaction. This ensures that either all the commands complete
+ successfully, or no changes are applied.
</para>
<para>
diff --git a/src/bin/psql/startup.c b/src/bin/psql/startup.c
index 9aa665d3258..110906a4e95 100644
--- a/src/bin/psql/startup.c
+++ b/src/bin/psql/startup.c
@@ -411,9 +411,7 @@ main(int argc, char *argv[])
if (options.single_txn)
{
- res = PSQLexec((successResult == EXIT_SUCCESS) ?
- "COMMIT" : "ROLLBACK");
- if (res == NULL)
+ if ((res = PSQLexec("COMMIT")) == NULL)
{
if (pset.on_error_stop)
{