Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEtsuro Fujita2022-05-13 09:30:00 +0000
committerEtsuro Fujita2022-05-13 09:30:00 +0000
commit8c8d307f82976122980bbccf940319d1b8a71403 (patch)
tree9ae961d1500f79505092a32b0c86b173884c38ba /doc/src/sgml/postgres-fdw.sgml
parent30ed71e423ee63b263730b86326da2a629a29f84 (diff)
Doc: Improve description of the "parallel_commit" option for postgres_fdw.
It wasn't very clear that if this option was enabled, postgres_fdw would commit remote transactions in parallel at main-transaction end, and commit remote subtransactions in parallel at subtransaction end, due to the references to (sub)transaction and other too specific documentation. Clarify that. Also reword to simplify. Follow-up for commit 04e706d42. Jonathan S. Katz, reviewed by Justin Pryzby, with some modifications by me. Discussion: https://postgr.es/m/1435bfd1-172b-de38-f590-4404a5a62eb0%40postgresql.org
Diffstat (limited to 'doc/src/sgml/postgres-fdw.sgml')
-rw-r--r--doc/src/sgml/postgres-fdw.sgml40
1 files changed, 22 insertions, 18 deletions
diff --git a/doc/src/sgml/postgres-fdw.sgml b/doc/src/sgml/postgres-fdw.sgml
index b43d0aecbac..68362fd1604 100644
--- a/doc/src/sgml/postgres-fdw.sgml
+++ b/doc/src/sgml/postgres-fdw.sgml
@@ -460,10 +460,16 @@ OPTIONS (ADD password_required 'false');
<title>Transaction Management Options</title>
<para>
- When multiple remote (sub)transactions are involved in a local
- (sub)transaction, by default <filename>postgres_fdw</filename> commits
- those remote (sub)transactions one by one when the local (sub)transaction
- commits.
+ As described in the Transaction Management section, in
+ <filename>postgres_fdw</filename> transactions are managed by creating
+ corresponding remote transactions, and subtransactions are managed by
+ creating corresponding remote subtransactions. When multiple remote
+ transactions are involved in the current local transaction, by default
+ <filename>postgres_fdw</filename> commits those remote transactions
+ serially when the local transaction is committed. When multiple remote
+ subtransactions are involved in the current local subtransaction, by
+ default <filename>postgres_fdw</filename> commits those remote
+ subtransactions serially when the local subtransaction is committed.
Performance can be improved with the following option:
</para>
@@ -474,26 +480,24 @@ OPTIONS (ADD password_required 'false');
<listitem>
<para>
This option controls whether <filename>postgres_fdw</filename> commits
- remote (sub)transactions opened on a foreign server in a local
- (sub)transaction in parallel when the local (sub)transaction commits.
- This option can only be specified for foreign servers, not per-table.
- The default is <literal>false</literal>.
+ in parallel remote transactions opened on a foreign server in a local
+ transaction when the local transaction is committed. This setting also
+ applies to remote and local subtransactions. This option can only be
+ specified for foreign servers, not per-table. The default is
+ <literal>false</literal>.
</para>
<para>
- If multiple foreign servers with this option enabled are involved in
- a local (sub)transaction, multiple remote (sub)transactions opened on
- those foreign servers in the local (sub)transaction are committed in
- parallel across those foreign servers when the local (sub)transaction
- commits.
+ If multiple foreign servers with this option enabled are involved in a
+ local transaction, multiple remote transactions on those foreign
+ servers are committed in parallel across those foreign servers when
+ the local transaction is committed.
</para>
<para>
- For a foreign server with this option enabled, if many remote
- (sub)transactions are opened on the foreign server in a local
- (sub)transaction, this option might increase the remote server's load
- when the local (sub)transaction commits, so be careful when using this
- option.
+ When this option is enabled, a foreign server with many remote
+ transactions may see a negative performance impact when the local
+ transaction is committed.
</para>
</listitem>
</varlistentry>