diff options
author | Michael Paquier | 2024-11-28 00:43:21 +0000 |
---|---|---|
committer | Michael Paquier | 2024-11-28 00:43:21 +0000 |
commit | 7668e85a4044d97e7d7e950310ca0b6467c0bd5d (patch) | |
tree | 0624a3a150b8cd2e30c2da4574357d2cfaf5ed54 /doc/src | |
parent | c93dffd89ba58b1b22faae2d2a9ec95e536c6740 (diff) |
Revert "Handle better implicit transaction state of pipeline mode"
This reverts commit d77f91214fb7 on all stable branches, due to concerns
regarding the compatility side effects this could create in a minor
release. The change still exists on HEAD.
Discussion: https://postgr.es/m/CA+TgmoZqRgeFTg4+Yf_CMRRXiHuNz1u6ZC4FvVk+rxw0RmOPnw@mail.gmail.com
Backpatch-through: 13
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/protocol.sgml | 21 |
1 files changed, 10 insertions, 11 deletions
diff --git a/doc/src/sgml/protocol.sgml b/doc/src/sgml/protocol.sgml index b0fea8f5d5d..5a3d6fdb5a3 100644 --- a/doc/src/sgml/protocol.sgml +++ b/doc/src/sgml/protocol.sgml @@ -1070,17 +1070,16 @@ SELCT 1/0;<!-- this typo is intentional --> <para> If the client has not issued an explicit <command>BEGIN</command>, - then an implicit transaction block is started and each Sync ordinarily - causes an implicit <command>COMMIT</command> if the preceding step(s) - succeeded, or an implicit <command>ROLLBACK</command> if they failed. - This implicit transaction block will only be detected by the server - when the first command ends without a sync. There are a few DDL - commands (such as <command>CREATE DATABASE</command>) that cannot be - executed inside a transaction block. If one of these is executed in a - pipeline, it will fail unless it is the first command after a Sync. - Furthermore, upon success it will force an immediate commit to preserve - database consistency. Thus a Sync immediately following one of these - commands has no effect except to respond with ReadyForQuery. + then each Sync ordinarily causes an implicit <command>COMMIT</command> + if the preceding step(s) succeeded, or an + implicit <command>ROLLBACK</command> if they failed. However, there + are a few DDL commands (such as <command>CREATE DATABASE</command>) + that cannot be executed inside a transaction block. If one of + these is executed in a pipeline, it will fail unless it is the first + command in the pipeline. Furthermore, upon success it will force an + immediate commit to preserve database consistency. Thus a Sync + immediately following one of these commands has no effect except to + respond with ReadyForQuery. </para> <para> |