Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitd226e93

Browse files
author
Liudmila Mantrova
committed
DOC: bug fix for 64-bit xids - PGPRO-578
1 parent3a8ae3c commitd226e93

File tree

4 files changed

+13
-12
lines changed

4 files changed

+13
-12
lines changed

‎doc/src/sgml/datatype.sgml

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4544,13 +4544,16 @@ SELECT * FROM pg_attribute
45444544
<para>
45454545
Another identifier type used by the system is <type>xid</>, or transaction
45464546
(abbreviated <abbrev>xact</>) identifier. This is the data type of the system columns
4547-
<structfield>xmin</> and <structfield>xmax</>. Transaction identifiers are 32-bit quantities.
4547+
<structfield>xmin</> and <structfield>xmax</>.
4548+
In <productname>&productname;</productname>, transaction IDs
4549+
are implemented as 64-bit counters to prevent transaction ID wraparound.
4550+
For details, see <xref linkend="vacuum-for-wraparound">.
45484551
</para>
45494552

45504553
<para>
45514554
A third identifier type used by the system is <type>cid</>, or
45524555
command identifier. This is the data type of the system columns
4553-
<structfield>cmin</> and <structfield>cmax</>. Command identifiers arealso32-bit quantities.
4556+
<structfield>cmin</> and <structfield>cmax</>. Command identifiers are 32-bit quantities.
45544557
</para>
45554558

45564559
<para>

‎doc/src/sgml/ddl.sgml

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1096,16 +1096,13 @@ CREATE TABLE circles (
10961096
</para>
10971097

10981098
<para>
1099-
Transaction identifiers are also 32-bit quantities. In a
1100-
long-lived database it is possible for transaction IDs to wrap
1101-
around. This is not a fatal problem given appropriate maintenance
1102-
procedures; see <xref linkend="maintenance"> for details. It is
1103-
unwise, however, to depend on the uniqueness of transaction IDs
1104-
over the long term (more than one billion transactions).
1099+
In <productname>&productname;</productname>, transaction IDs
1100+
are implemented as 64-bit counters to prevent transaction ID wraparound.
1101+
For details, see <xref linkend="vacuum-for-wraparound">.
11051102
</para>
11061103

11071104
<para>
1108-
Command identifiers arealso32-bit quantities. This creates a hard limit
1105+
Command identifiers are 32-bit quantities. This creates a hard limit
11091106
of 2<superscript>32</> (4 billion) <acronym>SQL</acronym> commands
11101107
within a single transaction. In practice this limit is not a
11111108
problem &mdash; note that the limit is on the number of

‎doc/src/sgml/func.sgml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17198,8 +17198,9 @@ SELECT collation for ('foo' COLLATE "de_DE");
1719817198
</table>
1719917199

1720017200
<para>
17201-
The internal transaction ID type (<type>xid</>) is 32 bits wide and
17202-
wraps around every 4 billion transactions. However, these functions
17201+
In <productname>&productname;</productname>, transaction IDs
17202+
are implemented as 64-bit counters to prevent transaction ID wraparound.
17203+
The following functions
1720317204
export a 64-bit format that is extended with an <quote>epoch</> counter
1720417205
so it will not wrap around during the life of an installation.
1720517206
The data type used by these functions, <type>txid_snapshot</type>,

‎doc/src/sgml/maintenance.sgml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,7 @@
405405
<productname>Postgres Pro Enterprise 9.6</productname> introduced
406406
64-bit transaction IDs, which are not subject to wraparound and
407407
do not need modulo-2<superscript>32</> arithmetic to be compared.
408-
Each tuple headercontain two XIDs, so extending them would lead to
408+
Each tuple headercontains two XIDs, so extending them would lead to
409409
high overhead. For that reason on-page XIDs are still 32-bit, but
410410
each page's header contains an offset, called <firstterm>epoch</>,
411411
to which they are added before comparing with each other.

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp