Re: Bloquear registros

From: Horacio Miranda <hmiranda(at)gmail(dot)com>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Bloquear registros
Date: 2005-08-12 19:43:32
Message-ID: f2b9e749050812124351ea0420@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

No sera que tu necesitas usar select for update en ves de generar bloqueos ?

me explico, si tres procesos van a actualizar un registro saldo con 50
mil pesos, y los tres hacen abonos de 20 mil pesos, debiera quedar en
50 + 20 + 20 + 20 = 110. pero si los tres solo hacen un select y luego
los tres hacen un update el saldo final quedara de 70 y no de 110.
Otra manera de hacer eso e ignoro si por debajo hace un select for
update es update TABLA set saldo=saldo+20000 where CONDICION.

Ojala que esto te sirva, a menos que los bloeos sean por tu modelo de
negocio o aplicación, de ser así yo buscaria la forma de cambiar la
aplicación, todo bloqueo en lo personal no me gusta... :'( pero recien
me estoy metiendo como DBA en bases de datos realmente grandes.

El 12/08/05, Cristofer Reyes A.<crreyes(at)alumnos(dot)inf(dot)utfsm(dot)cl> escribió:
> Máximo Eduardo Méndez wrote:
> > Hola. No recuerdo cómo se originó este hilo, pero sí que respondí acerca de cómo bloquear un registro. Solamente envié esto como una idea y se ve la definición de una función, no una ejecución directa desde el psql ;-)
> >
> Primero que nada, siento haber _confundido_ a algunas personas al enviar
> solo una parte del procedimiento con el cual tuve problemas, supuse que
> se entenderia puesto que venia en el contexto y contenido de la consulta
> que genere hace un tiempo y que Maximo respondio amablemente ;-)
>
> Por otro lado, me gustaria saber lo siguiente:
> tengo multiples procesos java consultando la misma tabla, y para evitar
> inconsistencias y procesamientos erroneos es que necesito el bloqueo de
> _registros_, pero mi pregunta es si una consulta (select por ejemplo)
> _puede_ saber si el registro que esta trantando de acceder esta siendo
> _bloqueado_ o accedido al mismo tiempo por otra consulta, de manera que
> no siga esperando a que se desbloquee, sino que consulte otros registros.
>
> [...]
>
> Saludos y gracias!
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 3: si publicas/lees desde Usenet, por favor envía "subscribe-nomail"
> a majordomo(at)postgresql(dot)org para que tus mensajes puedan llegar
> a los suscriptores de la lista
>

--
Saludos Horacio Miranda.
RedHat Certified Engineer.

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Betsa 2005-08-12 19:44:57 Log Postgresql
Previous Message Horacio Miranda 2005-08-12 19:38:29 Re: Monitoreo gráfico de postgresql