On Thu, 2010-06-17 at 14:50 -0400, Alvaro Herrera asked:
> How does it play with ON_ERROR_STOP/ROLLBACK?
With ON_ERROR_STOP=ON, psql issues an error when it encounters one,
stops processing the file that contains the error, and then continues
to process any remaining files.
I'm still investigating ON_ERROR_ROLLBACK. I need to tinker with it
some more before I say anything concrete.
On Fri, Jun 18, 2010 at 1:48 AM, Simon Riggs <simon@2ndquadrant.com> wrote:
> Also, how does it play with --single-transaction.
That was buried in our original report :) "BEGIN-COMMIT statements
within the files cause warnings when the command is wrapped in a
transaction with the -1 switch (as specified in the patch submission)"
To expand upon that a bit: when psql encounters a file that contains
a BEGIN statement, you get the expected "WARNING: there is already a
transaction in progress" message. The COMMIT at the end of that file
(assuming the user doesn't forget it) generates a COMMIT. Commands
after that commit, or in any remaining files to be processed, are
dealt with according to the user's autocommit settings:
- if autocommit is ON, statements in the remaining files are processed
& committed; the implicit COMMIT at the end of the whole thing then
generates a "WARNING: there is no transaction in progress" message
- if autocommit is OFF, statements in the remaining files generate
"ERROR: current transaction is aborted, commands ignored until end of
transaction block" messages.
> I would like multiple -c commands also, as well as a mix of -f and -c.
> Can we add that at the same time please?
I'll leave this one for someone else to answer. :)
gabrielle