]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Fix bug in COMMIT AND CHAIN command.
authorFujii Masao <fujii@postgresql.org>
Fri, 19 Feb 2021 12:57:52 +0000 (21:57 +0900)
committerFujii Masao <fujii@postgresql.org>
Fri, 19 Feb 2021 12:59:26 +0000 (21:59 +0900)
commitfadcc4e81bd99e6032ae042cae53be0c6eea7580
treefd277fa5224d21654feb14ab2f10f97d6f2dcedd
parente7cddb5f29171a536233acecb7ac9b9c5e1b4c77
Fix bug in COMMIT AND CHAIN command.

This commit fixes COMMIT AND CHAIN command so that it starts new transaction
immediately even if savepoints are defined within the transaction to commit.
Previously COMMIT AND CHAIN command did not in that case because
commit 280a408b48 forgot to make CommitTransactionCommand() handle
a transaction chaining when the transaction state was TBLOCK_SUBCOMMIT.

Also this commit adds the regression test for COMMIT AND CHAIN command
when savepoints are defined.

Back-patch to v12 where transaction chaining was added.

Reported-by: Arthur Nascimento
Author: Fujii Masao
Reviewed-by: Arthur Nascimento, Vik Fearing
Discussion: https://postgr.es/m/16867-3475744069228158@postgresql.org
src/backend/access/transam/xact.c
src/test/regress/expected/transactions.out
src/test/regress/sql/transactions.sql