8000 Document pg_get_multixact_members(). · postgres/postgres@c8b9f75 · GitHub
[go: up one dir, main page]

Skip to content

Commit c8b9f75

Browse files
nathan-bossartÁlvaro Herrera
andcommitted
Document pg_get_multixact_members().
Oversight in commit 0ac5ad5. Author: Sami Imseih <samimseih@gmail.com> Co-authored-by: Álvaro Herrera <alvherre@kurilemu.de> Reviewed-by: Ashutosh Bapat <ashutosh.bapat.oss@gmail.com> Discussion: https://postgr.es/m/20150619215231.GT133018%40postgresql.org Discussion: https://postgr.es/m/CAA5RZ0sjQDDwJfMRb%3DZ13nDLuRpF13ME2L_BdGxi0op8RKjmDg%40mail.gmail.com Backpatch-through: 13
1 parent 399997d commit c8b9f75

File tree

2 files changed

+31
-2
lines changed

2 files changed

+31
-2
lines changed

doc/src/sgml/func.sgml

Lines changed: 27 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27687,6 +27687,31 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres}
2768727687
details.
2768827688
</para></entry>
2768927689
</row>
27690+
27691+
<row>
27692+
<entry role="func_table_entry"><para role="func_signature">
27693+
<indexterm>
27694+
<primary>pg_get_multixact_members</primary>
27695+
</indexterm>
27696+
<function>pg_get_multixact_members</function> ( <parameter>multixid</parameter> <type>xid</type> )
27697+
<returnvalue>setof record</returnvalue>
27698+
( <parameter>xid</parameter> <type>xid</type>,
27699+
<parameter>mode</parameter> <type>text</type> )
27700+
</para>
27701+
<para>
27702+
Returns the transaction ID and lock mode for each member of the
27703+
specified multixact ID. The lock modes <literal>forupd</literal>,
27704+
<literal>fornokeyupd</literal>, <literal>sh</literal>, and
27705+
<literal>keysh</literal> correspond to the row-level locks
27706+
<literal>FOR UPDATE</literal>, <literal>FOR NO KEY UPDATE</literal>,
27707+
<literal>FOR SHARE</literal>, and <literal>FOR KEY SHARE</literal>,
27708+
respectively, as described in <xref linkend="locking-rows"/>. Two
27709+
additional modes are specific to multixacts:
27710+
<literal>nokeyupd</literal>, used by updates that do not modify key
27711+
columns, and <literal>upd</literal>, used by updates or deletes that
27712+
modify key columns.
27713+
</para></entry>
27714+
</row>
2769027715
</tbody>
2769127716
</tgroup>
2769227717
</table>
@@ -27695,7 +27720,8 @@ acl | {postgres=arwdDxtm/postgres,foo=r/postgres}
2769527720
The internal transaction ID type <type>xid</type> is 32 bits wide and
2769627721
wraps around every 4 billion transactions. However,
2769727722
the functions shown in <xref linkend="functions-pg-snapshot"/>, except
27698-
<function>age</function> and <function>mxid_age</function>, use a
27723+
<function>age</function>, <function>mxid_age</function>, and
27724+
<function>pg_get_multixact_members</function>, use a
2769927725
64-bit type <type>xid8</type> that does not wrap around during the life
2770027726
of an installation and can be converted to <type>xid</type> by casting if
2770127727
required; see <xref linkend="transaction-id"/> for details.

doc/src/sgml/maintenance.sgml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -779,7 +779,10 @@ HINT: Execute a database-wide VACUUM in that database.
779779
careful aging management, storage cleanup, and wraparound handling.
780780
There is a separate storage area which holds the list of members in
781781
each multixact, which also uses a 32-bit counter and which must also
782-
be managed.
782+
be managed. The system function
783+
<function>pg_get_multixact_members()</function> described in
784+
<xref linkend="functions-pg-snapshot"/> can be used to examine the
785+
transaction IDs associated with a multixact ID.
783786
</para>
784787

785788
<para>

0 commit comments

Comments
 (0)
0