Fix ROLLBACK TO command to work in aborted transaction.
authorTatsuo Ishii <ishii@sraoss.co.jp>
Fri, 25 Nov 2022 07:33:17 +0000 (16:33 +0900)
committerTatsuo Ishii <ishii@sraoss.co.jp>
Fri, 25 Nov 2022 09:23:26 +0000 (18:23 +0900)
commitb86b7767f9f3facc0869d9f1bc4304dce954e8a9
tree67e2a63665387317610bb41d2ffc2ae6436b12ee
parent0ab204c6de76c66180dd4e7213d16459aaf6cb31
Fix ROLLBACK TO command to work in aborted transaction.

Commit:

https://git.postgresql.org/gitweb/?p=pgpool2.git;a=commit;h=eea522ebfcf791a623e865deaa1aa6fb59e3c50b

fixed some cases in aborted transaction so that SQL commands except
COMMIT/ROLLBACK are not forwarded to backend. But it missed ROLLBACK
TO command. As a result even if ROLLBACK TO command is issued, the
command was not forwarded to backend and the transaction keeps on in
aborted state.
Back patched through 4.3 which the commit was brought in.
Also add a test case for ROLLBACK TO to test 078.
Discussion:
https://www.pgpool.net/pipermail/pgpool-general-jp/2022-November/001715.html
src/include/protocol/pool_proto_modules.h
src/protocol/pool_process_query.c
src/protocol/pool_proto_modules.c
src/test/regression/tests/078.aborted_transaction/expected.txt
src/test/regression/tests/078.aborted_transaction/test.sh