Advisory Lock BIGINT Values
От | David E. Wheeler |
---|---|
Тема | Advisory Lock BIGINT Values |
Дата | |
Msg-id | 69AC7BDF-4AA8-46FF-A6D9-8BD6FDB5A859@justatheory.com обсуждение исходный текст |
Ответы |
Re: Advisory Lock BIGINT Values
|
Список | pgsql-hackers |
Hackers, The documentation for pg_locks says that, for BIGINT advisory locks: > A bigint key is displayed with its high-order half in the classid column, its low-order half in the objid column I was in need of knowing what the bigint is that is waiting on a lock, and Andrew Dunstan was kind enough to help me outwith that. Since other folks might also need it, here’s a doc patch. diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml new file mode 100644 index 9564e01..de1c266 *** a/doc/src/sgml/catalogs.sgml --- b/doc/src/sgml/catalogs.sgml *************** *** 7313,7319 **** A <type>bigint</type> key is displayed with its high-order half in the <structfield>classid</> column,its low-order half in the <structfield>objid</> column, and <structfield>objsubid</> equal ! to 1. Integer keys are displayed with the first key in the <structfield>classid</> column, the second key in the<structfield>objid</> column, and <structfield>objsubid</> equal to 2. The actual meaning of the keys is up tothe user. Advisory locks are local to each database, --- 7313,7322 ---- A <type>bigint</type> key is displayed with its high-order half in the <structfield>classid</> column,its low-order half in the <structfield>objid</> column, and <structfield>objsubid</> equal ! to 1. The original <type>bigint</type> value can be reassembled with the ! expression <literal>(classid::int::bit(64) << 32 | ! objid::int::bit(64))::bigint</literal>. Integer keys are displayed with the ! first key in the <structfield>classid</> column, the second key in the <structfield>objid</> column, and <structfield>objsubid</>equal to 2. The actual meaning of the keys is up to the user. Advisory locks are local to eachdatabase, Best, DAvid
В списке pgsql-hackers по дате отправления: