La tabla tiene un trigger que se dispara con el update. Esta en plpgsql.

El trigger toca una tabla STOCK_ART.
Los FKs no se ven afectados porque solo se actualiza un campo de cantidad.
Cuando se anula el remito lo que hace es revertir el stock. Nada mas. No inserta ni borra nada.

Lo raro es que me paso con esta tabla ahora, pero ya me habia pasado con otra tabla que no toca ese trigger.
Ojo que no es algo frecuente. Creo que en el año me paso una o dos veces y siempre cuando estoy haciendo pruebas.
Los triggers no tienen ningun bucle. Solo un UPDATE a otra tabla.

Pero independientemente de las tablas y los triggers, mi pregunta es porque no puedo matar un proceso en mi postgres 9.3 en Win 7 64 bits.

¿Tendra algun bug la version? ¿me falta configurar algo?

Saludos


Gustavo J. Vaccaro

http://www.gjv.com.ar

El 23/12/2016 a las 12:53 p.m., Alvaro Herrera escribió:
Gustavo Vaccaro escribió:
Hola,

tengo un problema que me pasa muy de vez en cuando pero no tengo idea como
solucionarlo sin cerrar el postgres.

Recien desde un programa se ejecutó una sentencia: "UPDATE remitoegr SET
anulado = 'S' WHERE id_nroemp = 5 AND id_nroremito = 118"

Estaba corriendo el debug de PGADMIN sobre un trigger que se dispara con el
update en la tabla remitoegr y cerré sin darme cuenta la ventana que me abrio
el debug.

Cuando ejecuto "SELECT  * FROM pg_stat_activity" veo que el UPDATE esta vivo
con PID 11160.

Ejecuto "SELECT pg_terminate_backend(11160)" y no pasa nada.
¿tiene triggers la tabla?  ¿en qué lenguaje están escritos?

¿tiene FKs?

Si ninguna de esas cosas explica el comportamiento, sería muy útil que
pudieras conectarle un debugger y tomar un "backtrace".
https://wiki.postgresql.org/wiki/Getting_a_stack_trace_of_a_running_PostgreSQL_backend_on_Windows


Responder a