Gustavo Vaccaro escribió: > 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?
Mi tiempo es demasiado escaso como para que estuviera haciendo preguntas inútiles. Gracias por contestarlas aunque no te parecieran relevantes. La razón para hacer esas preguntas es que existía la posibilidad de que tuvieras triggers en otros lenguajes, donde no se ejecute verificación de interrupciones que mataría al proceso en caso de recibir una señal. Se supone que plpgsql tiene verificaciones en todos los bucles, con lo cual el UPDATE debería terminar pronto. Si tuvieras por ejemplo un trigger en plpython el cual invoca código python (que no verifica interrupciones), podrías mandarle todas las señales que quisieras y no tendría ningún efecto. Pero por lo visto no es el caso. Así que mi sospecha es que hay un bug por el cual en alguna parte falta la verificación de interrupciones en alguna parte de plpgsql. Por eso te pedí el stack trace: serviría para verificar dónde falta esa verificación. Pero no respondiste esa parte, así que no tenemos cómo investigar el problema. Las FKs también son relevantes aunque no se hagan cambios, por razones internas que me da pereza describir (o quizás simplemente no tengo tiempo). No dijiste qué versión de 9.3 estás usando. En versiones tempranas hay algunos bugs que fueron corregidos; algunos ejemplos https://git.postgresql.org/gitweb/?p=postgresql.git&a=search&h=REL9_3_STABLE&st=commit&s=check_for_interrupts -- Álvaro Herrera https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services - Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org) Para cambiar tu suscripción: http://www.postgresql.org/mailpref/pgsql-es-ayuda