Re: PL/perl elog(ERROR) Does not Abort Transaction

From: "David E(dot) Wheeler" <david(dot)wheeler(at)iovation(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Bruce Momjian <bruce(at)momjian(dot)us>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: PL/perl elog(ERROR) Does not Abort Transaction
Date: 2012-05-11 16:51:01
Message-ID: B4651EF7-0104-4B18-B532-F04A32E4B289@iovation.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On May 11, 2012, at 9:39 AM, Tom Lane wrote:

>> Hrm∑I've also just replicated it on CentOS 6.2 with Perl 5.10.1:
>
> Interesting.

Ah, it’s a psql configuration issue. I had replicated it on that box by connecting with psql on my Mac. When I SSHed to the box and used the psql there, I was *not* able to replicate it.

So then I tried psql from my Mac again, this time with -X, and the transaction was properly cancelled. Some more fiddling, and I find that this is the culprit:

\set ON_ERROR_ROLLBACK interactive

So I guess it transparently rolls back a savepoint for the previous statement. I had forgotten I turned that on. Apologies for the noise.

David

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Robert Haas 2012-05-11 17:05:37 Re: Gsoc2012 idea, tablesample
Previous Message Simon Riggs 2012-05-11 16:42:25 Re: [COMMITTERS] pgsql: Ensure age() returns a stable value rather than the latest value