Re: [Pgsql-ayuda] desbloqueo de registros

From: Alvaro Herrera Munoz <alvherre(at)dcc(dot)uchile(dot)cl>
To: jose antonio leo <jaleo8(at)storelandia(dot)com>
Cc: acastro(at)ciberdroide(dot)com, pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx
Subject: Re: [Pgsql-ayuda] desbloqueo de registros
Date: 2003-05-30 14:26:30
Message-ID: 20030530142630.GA25309@dcc.uchile.cl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

On Fri, May 30, 2003 at 11:30:36AM +0200, jose antonio leo wrote:
> La verdad es que es una aplicaci?n un poco un poco mal "parida", desde un
> inicio, pero es una herencia...
> Resulta que hay pantallas en la aplicaci?n que cuando entran en modificaci?n
> de un registro, lo bloquean. "Select for update" y despues de la
> moodificaci?n lo desbloquea.
> Pero es posible que el usuario cierre mal la aplicai?n en la pantalla de
> modificaci?n o pierda la conexion, o se ponga a navegar. Eso deja el bloqueo
> del registro hasta que se acuerde de su trabajo.

Cuando la conexion se cierra, las transacciones en curso son abortadas,
y los locks que tienen son liberados. Si alguien cierra la aplicacion
"a la mala", el sistema operativo deberia cerrar la conexion TCP con el
servidor.

Ahora, si el pajaron de turno deja la aplicacion abierta y se pone a
navegar, lo que necesitas es aplicar LART convenientemente (Luser
Attitude Readjustment Tool).

He leido varias discusiones en pgsql-general sobre como hacer
apropiadamente los bloqueos de datos para este tipo de operaciones. En
general la conclusion ha sido que el mecanismo _no pasa_ por usar SELECT
FOR UPDATE, por la misma razon que planteas. SELECT FOR UPDATE tiene un
lugar bien ganado, pero _no_ es el manejo de datos que vienen de una
aplicacion interactiva.

--
Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)
"La naturaleza, tan fragil, tan expuesta a la muerte... y tan viva"

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Leonardo Boet Sánchez 2003-05-30 16:15:54 RV: [Pgsql-ayuda] Crear funcion.
Previous Message Martin Marques 2003-05-30 11:11:53 Re: [Pgsql-ayuda] Oferta de Trabajo