Re: modos de bloqueo

From: Jaime Casanova <jaime(dot)casanova(at)2ndquadrant(dot)com>
To: Kernel <jucabapa(at)gmail(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: modos de bloqueo
Date: 2016-04-21 14:18:57
Message-ID: CAJGNTeM0S3Tgq7TVfN18-8JkLdqMc-RbDJViGjduyYqu+WySiw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

2016-04-21 7:29 GMT-05:00 Kernel <jucabapa(at)gmail(dot)com>:
>
> ¿hay alguna manera de saber si un registro esta bloqueado y evitar la
> espera?
>

En cualquier versión de postgres puedes usar NOWAIT, que causará
que si no puede bloquear algún registro el SELECT devuelva un error.
Si en la versión de postgres que usas no hay NOWAIT, cambia de
versión es muy vieja (esto apareció en 8.1)

SELECT * FROM tabla WHERE id = <algo> FOR UPDATE NOWAIT

O si estas en 9.3 o superior también podrías usar el parámetro: lock_timeout

SET lock_timeout TO '10s';
SELECT * FROM tabla WHERE id = <algo> FOR UPDATE

--
Jaime Casanova www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda(at)postgresql(dot)org)
Para cambiar tu suscripcin:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Ivan Perales M. 2016-04-21 14:39:24 Re: modos de bloqueo
Previous Message Jaime Casanova 2016-04-21 14:14:15 Re: modos de bloqueo