Обсуждение: lock help
I have a db wedged and need help dealing with it. How can I find out more about this, who, what, where, etc, and how to free this up: ghiza=# select * from pg_user; usename | usesysid | usecreatedb | usesuper | usecatupd | passwd | valuntil | useconfig ---------+----------+-------------+----------+-----------+----------+----------+----------- pgadmin | 10 | t | t | t | ******** | | ghiza | 16385 | f | f | f | ******** | | (2 rows) ghiza=# select version(); version --------------------------------------------------------------------------------------------------- PostgreSQL 8.2.6 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.4.6 20060404 (Red Hat 3.4.6-9) (1 row)
Ray Stell <stellr@cns.vt.edu> writes: > I have a db wedged and need help dealing with it. Define "wedged" --- what's the actual problem? If it is a locking issue then the pg_locks view might be useful. regards, tom lane
On Thu, Mar 20, 2008 at 10:42:29AM -0400, Tom Lane wrote: > Ray Stell <stellr@cns.vt.edu> writes: > Define "wedged" --- what's the actual problem? client queries not returning. > If it is a locking issue then the pg_locks view might be useful. duh, I meant to cut and paste the lock info and sent user info by being in a panic. ghiza=# select * from pg_locks; locktype | database | relation | page | tuple | transactionid | classid | objid | objsubid | transaction | pid | mode | granted ---------------+----------+----------+------+-------+---------------+---------+-------+----------+-------------+-------+-----------------+--------- relation | 16384 | 10328 | | | | | | | 15470960 | 30765 |AccessShareLock | t transactionid | | | | | 15470960 | | | | 15470960 | 30765 |ExclusiveLock | t (2 rows) As it turns out this app is distributed across 3 or 4 dbs and it was an oracle instance that was hung. However, I was ill prepared to eval the state of the pg db. Is there a good place to focus in the docs on how to evaluate locking issues. Thanks.