RE: consulta triggers y lock

From: mmiranda(at)americatel(dot)com(dot)sv
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: RE: consulta triggers y lock
Date: 2005-04-26 21:07:12
Message-ID: 76E0DAA32C39D711B6EC0002B364A6FA0440F616@amsal01exc01.americatel.com.sv
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda


> -----Original Message-----
> From: Alvaro Herrera [mailto:alvherre(at)dcc(dot)uchile(dot)cl]
> Sent: Tuesday, April 26, 2005 1:52 PM
> To: mmiranda(at)americatel(dot)com(dot)sv
> Cc: pgsql-es-ayuda(at)postgresql(dot)org
> Subject: Re: [pgsql-es-ayuda] consulta triggers y lock
>
>
> Yo diria que no. Dices que vas a actualizar el mismo registro que
> genera el disparo del trigger? Entonces es mas facil cambiarlo
> directamente en el trigger, modificando el pseudo-registro
> NEW que es lo
> que tiene que retornar el trigger. Ojo que si quieres modificar el
> dato, no debes usar un trigger after insert, sino before.
>

He leido algo de eso en el manual, lo que pasa es que la columna que
actualizo esta NULL al momento de hacer el insert (para ser mas especifico,
la columna se llama valor_llamada y se calcula en base a la tarifa y la
duracion de la llamada que vienen el el registro que se va a insertar) ,
pero igual creo que se podria hacer NEW.valor_llamada = NEW.duracion *
NEW.tarifa
Lo he probado y funciona, la hora pico comienza a las 6:00 pmp (GMT-6) asi
que no se si funcionara, les cuento luego

> Lo otro que puede ser es que tu trigger quede en un loop. Has probado
> poniendo un RAISE NOTICE a ver cuantas veces se ejecuta?
> Observa que si
> haces un trigger que haga una accion que dispare otro trigger, es muy
> sencillo entrar en un loop! (me sorprenderia que no fuera un loop
> infinito, a menos que tengas mucha suerte)
>
> --
> Alvaro Herrera (<alvherre[(at)]dcc(dot)uchile(dot)cl>)

Estoy casi seguro de que no es un loop, ya que el trigger solo se corre
despues de insertar y lo que hago es hacer un update a la fila que se acaba
de insertar,

insert != update

segun mi logica en el segundo caso no se corre ningun trigger

---
Miguel

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Edwin Quijada 2005-04-26 21:07:18 Re: Mensajes en un script!
Previous Message Hugo Joel Fuentes Alcantara 2005-04-26 20:58:26 Gracias...Re: Configurar PostgreSQL en Red...Nuevo en la Lista