Robert Haas <robertmhaas@gmail.com> writes:
> On Mon, Nov 18, 2013 at 9:39 AM, Ian Lawrence Barwick <barwick@gmail.com> wrote:
>> I'd expect this to lead to a failed transaction block,
>> or at least some sort of notice that the transaction itself
>> has been rolled back.
> Ending up in a failed transaction block would be wrong. If the user
> does a BEGIN, a bunch of stuff, and a COMMIT, they're entitled to
> assume without checking that they are no longer in a transaction
> block.
Absolutely. There are plenty of ways to fail at COMMIT already,
eg deferred foreign key constraints. This shouldn't act any
different.
regards, tom lane