| From: | Diego Ayala <netdiego81(at)gmail(dot)com> |
|---|---|
| To: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
| Cc: | Postgres Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
| Subject: | Re: [pgsql-es-ayuda] como aislar una transacción de otra |
| Date: | 2010-10-05 10:03:52 |
| Message-ID: | AANLkTimmQoaZh-G4YrK-KRVoCOWm3L4KAssfgXJcxLav@mail.gmail.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-es-ayuda |
Muchas gracias por su ayuda, realizare las pruebas con las opciones que me
propusieron...!!
El 4 de octubre de 2010 12:08, Alvaro Herrera
<alvherre(at)commandprompt(dot)com>escribió:
> Excerpts from Diego Ayala's message of lun oct 04 08:07:25 -0400 2010:
> > buen dia compañeros, tengo una consulta , la gente de desarrollo esta
> > teniendo un incoveniente durante la ejecucion de una transaccion, que es
> la
> > siguiente, ellos poseen un procedimiento que ejecuta una transaccion,
> dentro
> > del cual se evaluan ciertas cosas, la duración de esta transaccion es
> > alrededor de 300 a 500 ms. al hacer commit esta transaccion se almacena
> en
> > una tabla A, la situacion radica en que cuando se esta ejecutando esta
> > transacción, ingresa otra transacción que verifica la situacion de la
> > primera transaccion, esta segunda transacción, evalua la primera y como
> se
> > ejecuta en menos tiempo que la primera, la segunda almacena datos errones
> en
> > otra tabla B, como resultado de la primera transaccion. La consulta es si
> > hay algun metodo o funcion en PostgreSQL que ayude para evitar que la
> > segunda transaccion evalue la primera, como bloquear la segunda
> transaccion
> > hasta que la primera culmine ..
>
> Podrías obtener un lock al principio de cada una, por ej. con
> pg_advisory_lock().
>
> Otra alternativa sería usar modo de aislación serializable (SET
> TRANSACTION ISOLATION LEVEL SERIALIZABLE). Tendrías que asegurarte que
> si una de ellas falla, tendría que empezar de nuevo; creo que esta
> alternativa es menos conveniente en tu caso.
>
> --
> Álvaro Herrera <alvherre(at)commandprompt(dot)com>
> The PostgreSQL Company - Command Prompt, Inc.
> PostgreSQL Replication, Consulting, Custom Development, 24x7 support
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Martin Li Causi | 2010-10-05 12:34:50 | tunning |
| Previous Message | German Gomez | 2010-10-05 05:29:06 | FW H |