Re: consulta para ver las tablas, indices, etc que están involucrados en un lock

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Hellmuth Vargas <hivs77(at)gmail(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: consulta para ver las tablas, indices, etc que están involucrados en un lock
Date: 2012-08-29 22:08:25
Message-ID: 1346277493-sup-2849@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Excerpts from Hellmuth Vargas's message of mié ago 29 17:33:40 -0400 2012:
> Hola Lista
>
> tiempo sin escribir!!! En múltiples oportunidades se presentan
> transacciones que pueden demorar mucho tiempo y uno desea indagar que
> tablas o en general objetos están involucradas en el mismos
> para determinar problemas de indices, mantenimiento, etc.
>
> He probado y ajustado consultas disponible en varias fuentes (la principal
> http://wiki.postgresql.org/wiki/Lock_Monitoring) pero ninguna logra sacar
> el nombre y/o tipo de todos los objetos involucrados en un bloqueo
>
> esta es la ultima consulta que estoy manejando para aquellos bloqueos de
> mas de 2 minutos
>
> select pg_stat_activity.procpid,pg_class.relname,pg_locks.transactionid,
> pg_locks.mode from pg_stat_activity,pg_locks left outer join pg_class on
> (pg_locks.relation = pg_class.oid) where
> pg_locks.pid=pg_stat_activity.procpid and
> pg_stat_activity.current_query<>'<IDLE>' and
> current_timestamp-xact_start>interval '2 minutes' order by query_start
>
> Alguien tendría una consulta mejor? les agradezco de antemano su aporte!!

Normalmente cuando tienes bloqueos sin explicación puede deberse a
llaves foráneas. En ese caso hay candados granted=true con
locktype=tuple en pg_locks que están tomados por transacciones que
además tienen un candado granted=false asociados a otra transacción. Lo
que esto significa es que esa otra transacción tiene bloqueado la tupla
en cuestión, pero esto no queda representado en pg_locks.

Se supone que esto está parcialmente explicado en esta presentación:
http://lanyrd.com/2011/pgbr/skdgz/ .. pero vaya, veo que no están las
láminas. Ah, aquí:
http://pgbr.postgresql.org.br/2011/slides/65.pdf

Quizás te sirva de algo.

--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2012-08-29 23:21:55 Re: ES, Lista te invita a registrarte en Lenddo
Previous Message Hellmuth Vargas 2012-08-29 21:33:40 consulta para ver las tablas, indices,etc que están involucrados en un lock