Re: BUG #16867: savepoints vs. commit and chain

Vik Fearing <vik@postgresfriends.org>

From: Vik Fearing <vik@postgresfriends.org>
To: Fujii Masao <masao.fujii@oss.nttdata.com>, Arthur Nascimento <tureba@gmail.com>
Cc: pgsql-bugs@lists.postgresql.org
Date: 2021-02-19T08:29:32Z
Lists: pgsql-bugs
On 2/19/21 5:02 AM, Fujii Masao wrote:
> 
> 
> On 2021/02/18 23:10, Vik Fearing wrote:
>>
>> No objection from me.  According to the standard, a COMMIT should
>> destroy all savepoints and terminate the transaction, even if AND CHAIN
>> is specified.
> 
> You imply that the standard says that COMMIT AND CHAIN should just
> terminate
> the transaction if there are savepoints defined, i.e., should not start new
> transaction? Since I can (maybe wrongly) interpret your comment like that,
> please let me confirm what the standard says just in case.

The COMMIT terminates the transaction, the AND CHAIN starts a new one.

> I was thinking that COMMIT AND CHAIN should destroy all the savepoints,
> terminate the transaction and start new transaction with the same
> transaction
> characteristics immediately.

Your thinking is correct!
-- 
Vik Fearing



Commits

  1. Fix psql's ON_ERROR_ROLLBACK so that it handles COMMIT AND CHAIN.

  2. Fix bug in COMMIT AND CHAIN command.