mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-27 08:39:28 +08:00
Document that CLUSTER breaks MVCC visibility rules.
(Not needed in cvs head, because CLUSTER itself is fixed there) Heikki Linnakangas
This commit is contained in:
parent
1e7f0c3a14
commit
38e6aea5a7
@ -1,5 +1,5 @@
|
|||||||
<!--
|
<!--
|
||||||
$PostgreSQL: pgsql/doc/src/sgml/ref/cluster.sgml,v 1.38 2006/11/04 19:03:51 tgl Exp $
|
$PostgreSQL: pgsql/doc/src/sgml/ref/cluster.sgml,v 1.38.2.1 2007/05/13 16:04:40 mha Exp $
|
||||||
PostgreSQL documentation
|
PostgreSQL documentation
|
||||||
-->
|
-->
|
||||||
|
|
||||||
@ -99,6 +99,17 @@ CLUSTER
|
|||||||
<refsect1>
|
<refsect1>
|
||||||
<title>Notes</title>
|
<title>Notes</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<command>CLUSTER</command> loses all visibility information of tuples,
|
||||||
|
which makes the table look empty to any snapshot that was taken
|
||||||
|
before the <command>CLUSTER</command> command finished. That makes
|
||||||
|
<command>CLUSTER</command> unsuitable for applications where
|
||||||
|
transactions that access the table being clustered are run concurrently
|
||||||
|
with <command>CLUSTER</command>. This is most visible with serializable
|
||||||
|
transactions, because they take only one snapshot at the beginning of the
|
||||||
|
transaction, but read-committed transactions are also affected.
|
||||||
|
</para>
|
||||||
|
|
||||||
<para>
|
<para>
|
||||||
In cases where you are accessing single rows randomly
|
In cases where you are accessing single rows randomly
|
||||||
within a table, the actual order of the data in the
|
within a table, the actual order of the data in the
|
||||||
|
Loading…
Reference in New Issue
Block a user