cancel
Showing results for 
Search instead for 
Did you mean: 

Probleme Cannot delete or update a parent row: a foreign key

vinloz
Champ in-the-making
Champ in-the-making
Bonjour,
suite à une lecture des logs j'ai un message ci dessous concernant un defaut de purge.

Avez vous une idée sur le problème?
quelles sont les actions que je doit mettre en place?

suite a une consultation des forums j'ai tenté :
system.content.orphanProtectDays=0
system.content.orphanCleanup.cronExpression=0 4 * * * ?
system.content.eagerOrphanCleanup=true

mais la purge ne se réalise toujours pas.

Avez vous des pistes?

Merci par avcance


 [node.db.DeletedNodeCleanup[Worker] DefaultScheduler_Worker-10] Failed to purge nodes.  If the purgable set is too large for the available DB resources 
  then the nodes can be purged manually as
2012-06-04 21:00:04,921   well.
  Set log level to WARN for this class to get exception log:
   Max commit time: 1336244400008
   Error:      
### Error updating database.  Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (`alfresco`.`alf_child_assoc`, CONSTRAINT `fk_alf_cass_pnode` FOREIGN KEY (`parent_node_id`) REFERENCES `alf_node` (`id`))
### The error may involve alfresco.node.delete_NodesByTxnCommitTime-Inline
### The error occurred while setting parameters
### Cause: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (`alfresco`.`alf_child_assoc`, CONSTRAINT `fk_alf_cass_pnode` FOREIGN KEY (`parent_node_id`) REFERENCES `alf_node` (`id`))
; SQL []; Cannot delete or update a parent row: a foreign key constraint fails (`alfresco`.`alf_child_assoc`, CONSTRAINT `fk_alf_cass_pnode` FOREIGN KEY (`parent_node_id`) REFERENCES `alf_node` (`id`)); nested exception is com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Cannot delete or update a parent row: a foreign key constraint fails (`alfresco`.`alf_child_assoc`, CONSTRAINT `fk_alf_cass_pnode` FOREIGN KEY (`parent_node_id`) REFERENCES `alf_node` (`id`))
4 REPLIES 4

rguinot
Confirmed Champ
Confirmed Champ
Etrange… vous avez des incohérences dans la base de données semble-t-il.
Essayez de mettre le cleaner en WARN pour obtenir la trace d'exception complète, comme suggéré.
Essayez également de déterminer la requête exacte qui échoue et inspectez la dans votre base de données.

vinloz
Champ in-the-making
Champ in-the-making
bonjour,
et merci de cette réponse.
Je pense que cette anomalie est issue de la suppression manuelle d'un site présent dans la corbeille (contenant beaucoup de fichiers).

"Essayez de mettre le cleaner en WARN pour obtenir la trace d'exception complète, comme suggéré."
A quel endroit je peux mettre le cleaner en WARN.



"Essayez également de déterminer la requête exacte qui échoue et inspectez la dans votre base de données."

Est ce que vous avez une méthode pour l'identifier?

merci

dranakan
Champ on-the-rise
Champ on-the-rise
Hello,

J'ai aussi ce bug qui arrive de temps en temps. Je ne sais pas ce qui pose problème. Pour palier à ceci, on peut procéder à un FULL réindexage pour obtenir le node qui pose problème et ensuite supprimer manuellement les enregistrement dans la DB : https://forums.alfresco.com/forum/installation-upgrades-configuration-integration/installation-upgra...

Voir aussi problème avec la table alf_activity_post https://forums.alfresco.com/comment/131181#comment-131181

Pour relancer la purge, il faut modifier le bean nodeServiceCleanupTrigger(/opt/Alfresco/tomcat/webapps/alfresco/WEB-INF/classes/alfresco/scheduled-jobs-context.xml) et redémarrer Alfresco.

(Alfresco 4.0D, RHEL 5.6, Mysql)

for my understanding the root problem is broken referencial integrity. Take a look in the thread https://forums.alfresco.com/comment/131181#comment-131181 for housekeeping …