Re: Parser abort ignoring following commands - Mailing list pgsql-hackers

From Peter Eisentraut
Subject Re: Parser abort ignoring following commands
Date
Msg-id Pine.LNX.4.30.0105261755260.757-100000@peter.localdomain
Whole thread Raw
In response to Re: Parser abort ignoring following commands  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Parser abort ignoring following commands  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Parser abort ignoring following commands  (Adam Haberlach <adam@newsnipple.com>)
List pgsql-hackers
Tom Lane writes:

> Peter Eisentraut <peter_e@gmx.net> writes:
> > No, I think there is another problem.  How about something without
> > selects:
>
> > $ psql -c 'delete from pk; delete from xx;'
> > ERROR:  Relation 'xx' does not exist
>
> > "pk" exists, but nothing is deleted.
>
> Sure, because the transaction is rolled back.  The whole string
> is executed in one transaction.  You will definitely break existing
> applications if you change that.

Applications that rely on this behaviour are broken.  It was always said
that statements are in their own transaction block unless in an explicit
BEGIN/COMMIT block.  A statement is defined to end at the semicolon, not
at the end of the string you submit to PQexec().

-- 
Peter Eisentraut   peter_e@gmx.net   http://funkturm.homeip.net/~peter



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Parser abort ignoring following commands
Next
From: Tom Lane
Date:
Subject: Re: Parser abort ignoring following commands