Document use of pg_locks.objid for advisory locks, suggestion from Marc Mamin

This commit is contained in:
Bruce Momjian 2008-03-06 18:49:32 +00:00
parent 4f887c6bf0
commit 2b70548bd4
2 changed files with 8 additions and 4 deletions

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/catalogs.sgml,v 2.161 2008/01/31 18:40:02 tgl Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/catalogs.sgml,v 2.162 2008/03/06 18:49:32 momjian Exp $ -->
<!--
Documentation of the system catalogs, directed toward PostgreSQL developers
-->
@ -5691,7 +5691,10 @@
<entry>any OID column</entry>
<entry>
OID of the object within its system catalog, or NULL if the
object is not a general database object
object is not a general database object.
For advisory locks it is used to distinguish the two key
spaces (<literal>1</> for an int8 key, <literal>2</> for two
int4 keys).
</entry>
</row>
<row>

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.422 2008/03/03 18:09:02 momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.423 2008/03/06 18:49:32 momjian Exp $ -->
<chapter id="functions">
<title>Functions and Operators</title>
@ -12378,7 +12378,8 @@ SELECT (pg_stat_file('filename')).modification;
<para>
<function>pg_advisory_lock</> locks an application-defined resource,
which can be identified either by a single 64-bit key value or two
32-bit key values (note that these two key spaces do not overlap). If
32-bit key values (note that these two key spaces do not overlap).
The key type is specified in <literal>pg_locks.objid</>. If
another session already holds a lock on the same resource, the
function will wait until the resource becomes available. The lock
is exclusive. Multiple lock requests stack, so that if the same resource