Vous n'êtes pas identifié(e).
Bonjour,
Je souhaiterais tracer l'exécution des différents triggers liés aux contraintes (FK surtout). Vous voyez un moyen de faire ça ?
Parce que je me retrouve dans un cas incompréhensible. Une contrainte FK est manifestement déclenchée sans raison sur un ordre delete (pg13), et j'aimerai comprendre ce qui se passe.
En résumé :
Table T1 (id1 INT PIMARY KEY);
Table T2 (id2 PRIMARY KEY, t1_id1 INT REFERENCES T1(id));
Table T3 (id3 PRIMARY KEY, t1_id1 INT REFERENCES T1(id));
Si je fais des DELETE sur T3, manifestement ça déclenche le check de la FK sur T2 !?
C'est absurde, je n'arrive pas à le reproduire en créant des tables T1,T2,T3 sur une sandbox, mais je suis à peu près sûr de mon coup parce que l'ordre DELETE sur T3 mouline toujours 96h plus tard, alors que si je crée un index sur T2(t1_id1) le DELETE s'exécute en quelques milisecondes, et se je droppe l'index, re-belote, le delete dure plus que ma patience.
J'aimerais donc pourvoir identifier tous les triggers appelés sur mon ordre DELETE, avoir une stack d'appel ce serait l'idéal. Vous voyez un moyen de faire ça ?
Hors ligne