mirror of
https://github.com/postgres/postgres.git
synced 2025-05-02 11:44:50 +03:00
Doc: warn against using parallel restore with --load-via-partition-root.
This isn't terribly safe, and making it so doesn't seem like a small project, so for the moment just warn against it. Discussion: https://postgr.es/m/13624.1535486019@sss.pgh.pa.us
This commit is contained in:
parent
89b280e139
commit
73a6005137
@ -793,13 +793,26 @@ PostgreSQL documentation
|
||||
<term><option>--load-via-partition-root</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
When dumping a <command>COPY</command> or <command>INSERT</command> statement for a partitioned table,
|
||||
target the root of the partitioning hierarchy which contains it rather
|
||||
than the partition itself. This may be useful when reloading data on
|
||||
a server where rows do not always fall into the same partitions as
|
||||
they did on the original server. This could happen, for example, if
|
||||
the partitioning column is of type text and the two system have
|
||||
different definitions of the collation used to partition the data.
|
||||
When dumping data for a table partition, make
|
||||
the <command>COPY</command> or <command>INSERT</command> statements
|
||||
target the root of the partitioning hierarchy that contains it, rather
|
||||
than the partition itself. This causes the appropriate partition to
|
||||
be re-determined for each row when the data is loaded. This may be
|
||||
useful when reloading data on a server where rows do not always fall
|
||||
into the same partitions as they did on the original server. That
|
||||
could happen, for example, if the partitioning column is of type text
|
||||
and the two systems have different definitions of the collation used
|
||||
to sort the partitioning column.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
It is best not to use parallelism when restoring from an archive made
|
||||
with this option, because <application>pg_restore</application> will
|
||||
not know exactly which partition(s) a given archive data item will
|
||||
load data into. This could result in inefficiency due to lock
|
||||
conflicts between parallel jobs, or perhaps even reload failures due
|
||||
to foreign key constraints being set up before all the relevant data
|
||||
is loaded.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -915,7 +928,7 @@ PostgreSQL documentation
|
||||
<para>
|
||||
Add <literal>ON CONFLICT DO NOTHING</literal> to
|
||||
<command>INSERT</command> commands.
|
||||
This option is not valid unless <option>--inserts</option> or
|
||||
This option is not valid unless <option>--inserts</option> or
|
||||
<option>--column-inserts</option> is also specified.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -330,14 +330,21 @@ PostgreSQL documentation
|
||||
<term><option>--load-via-partition-root</option></term>
|
||||
<listitem>
|
||||
<para>
|
||||
When dumping a <command>COPY</command> or <command>INSERT</command> statement for a partitioned table,
|
||||
target the root of the partitioning hierarchy which contains it rather
|
||||
than the partition itself. This may be useful when reloading data on
|
||||
a server where rows do not always fall into the same partitions as
|
||||
they did on the original server. This could happen, for example, if
|
||||
the partitioning column is of type text and the two system have
|
||||
different definitions of the collation used to partition the data.
|
||||
When dumping data for a table partition, make
|
||||
the <command>COPY</command> or <command>INSERT</command> statements
|
||||
target the root of the partitioning hierarchy that contains it, rather
|
||||
than the partition itself. This causes the appropriate partition to
|
||||
be re-determined for each row when the data is loaded. This may be
|
||||
useful when reloading data on a server where rows do not always fall
|
||||
into the same partitions as they did on the original server. That
|
||||
could happen, for example, if the partitioning column is of type text
|
||||
and the two systems have different definitions of the collation used
|
||||
to sort the partitioning column.
|
||||
</para>
|
||||
|
||||
<!-- Currently, we don't need pg_dump's warning about parallelism here,
|
||||
since parallel restore from a pg_dumpall script is impossible.
|
||||
-->
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
@ -452,7 +459,7 @@ PostgreSQL documentation
|
||||
<para>
|
||||
Add <literal>ON CONFLICT DO NOTHING</literal> to
|
||||
<command>INSERT</command> commands.
|
||||
This option is not valid unless <option>--inserts</option> or
|
||||
This option is not valid unless <option>--inserts</option> or
|
||||
<option>--column-inserts</option> is also specified.
|
||||
</para>
|
||||
</listitem>
|
||||
|
Loading…
x
Reference in New Issue
Block a user