summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Bossart <nathan@postgresql.org>2025-07-01 10:36:27 -0500
committerNathan Bossart <nathan@postgresql.org>2025-07-01 10:36:27 -0500
commit8f456630ce9354a96f20c00a1339a59f33da2930 (patch)
tree121cf4172b91446a3e546314d722110a4ef8c469
parent614ffb26d1cd9a068e8ba2761a5aad64100f4d6d (diff)
Document age(xid) and mxid_age(xid).
These functions have been around for some time, but commits 48b5aa3143 and 15afb7d61c were only back-patched to v16. Let's back-patch them to all supported versions now. Reported-by: David Rowley <dgrowleyml@gmail.com> (commit 48b5aa3143) Author: Bruce Momjian <bruce@momjian.us> (commit 48b5aa3143) Co-authored-by: Bertrand Drouvot <bertranddrouvot.pg@gmail.com> (commit 15afb7d61c) Reviewed-by: Michael Paquier <michael@paquier.xyz> (commit 15afb7d61c) Reviewed-by: Robert Haas <robertmhaas@gmail.com> Reviewed-by: Álvaro Herrera <alvherre@kurilemu.de> Discussion: https://postgr.es/m/aGMCxHxLfeMdQk8m%40nathan Backpatch-through: 13-15
-rw-r--r--doc/src/sgml/func.sgml31
1 files changed, 30 insertions, 1 deletions
diff --git a/doc/src/sgml/func.sgml b/doc/src/sgml/func.sgml
index 372cb036fde..f11c4f711d4 100644
--- a/doc/src/sgml/func.sgml
+++ b/doc/src/sgml/func.sgml
@@ -24641,6 +24641,34 @@ SELECT collation for ('foo' COLLATE "de_DE");
<row>
<entry role="func_table_entry"><para role="func_signature">
<indexterm>
+ <primary>age</primary>
+ </indexterm>
+ <function>age</function> ( <type>xid</type> )
+ <returnvalue>integer</returnvalue>
+ </para>
+ <para>
+ Returns the number of transactions between the supplied
+ transaction id and the current transaction counter.
+ </para></entry>
+ </row>
+
+ <row>
+ <entry role="func_table_entry"><para role="func_signature">
+ <indexterm>
+ <primary>mxid_age</primary>
+ </indexterm>
+ <function>mxid_age</function> ( <type>xid</type> )
+ <returnvalue>integer</returnvalue>
+ </para>
+ <para>
+ Returns the number of multixacts IDs between the supplied
+ multixact ID and the current multixacts counter.
+ </para></entry>
+ </row>
+
+ <row>
+ <entry role="func_table_entry"><para role="func_signature">
+ <indexterm>
<primary>pg_current_xact_id</primary>
</indexterm>
<function>pg_current_xact_id</function> ()
@@ -24773,7 +24801,8 @@ SELECT collation for ('foo' COLLATE "de_DE");
<para>
The internal transaction ID type <type>xid</type> is 32 bits wide and
wraps around every 4 billion transactions. However,
- the functions shown in <xref linkend="functions-pg-snapshot"/> use a
+ the functions shown in <xref linkend="functions-pg-snapshot"/>, except
+ <function>age</function> and <function>mxid_age</function>, use a
64-bit type <type>xid8</type> that does not wrap around during the life
of an installation, and can be converted to <type>xid</type> by casting if
required. The data type <type>pg_snapshot</type> stores information about