On Mon, 2010-06-21 at 20:53 -0400, Robert Haas wrote:
> On Mon, Jun 21, 2010 at 7:51 PM, gabrielle <gorthx@gmail.com> wrote:
> > 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.
That would be undesirable.
> > 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.
This is the existing behaviour.
> So none of the above sounds like desired behavior to me... is that just me?
Single transaction needs some help, but that's not the fault of this
patch.
-- Simon Riggs www.2ndQuadrant.comPostgreSQL Development, 24x7 Support, Training and Services