Dotclear

Ticket #490 (closed defect: worksforme)

Opened 17 years ago

Last modified 15 years ago

Erreur à l'import d'une sauvegarde de dotclear dans une installation multiblog

Reported by: effraie Owned by: olivier
Priority: normal Milestone: 2.2
Component: module:import/export Version: 2.1
Severity: normal Keywords:
Cc:

Description

La sauvegarde est issue d'une installation "monoblog", et l'import de cette sauvegarde dans une installation multiblog (fonctionnelle par ailleurs) se solde par un échec, avec cette erreur :

Cannot add or update a child row: a foreign key constraint fails (`multiblog/dc_post_media`, CONSTRAINT `dc_fk_media` FOREIGN KEY (`media_id`) REFERENCES `dc_media` (`media_id`) ON DELETE CASCADE ON UPDATE CASCADE) (1452)

Change History

comment:1 Changed 16 years ago by xave

  • Component changed from module:core to module:import/export

comment:2 Changed 16 years ago by xave

Pas de defer constraints dans innodb... chié.

comment:3 Changed 16 years ago by tomek

j'en déduis que c'est la merde donc ?

comment:4 Changed 16 years ago by xave

C'est la grosse merde, oui. Soit on cherche à simuler ce defer constraints : ça marche dans postgres, on peut éventuellement le faire dans mysql mais il faut alors faire toutes les vérifications d'intégrité à la main, ce qui risque d'être assez lourd, par contre, dans sqlite, on oublie tout de suite.

L'autre solution, c'est de vérifier qu'on rentre bien tout dans le bon ordre, mais sur un fichier de sauvegarde, c'est tout sauf évident.

D'un côté comme de l'autre, on perd le bénéfice de la multi-transaction qui permet de faire un rollback propre en cas d'erreur.

Oui, c'est la grosse merde.

comment:5 Changed 16 years ago by xave

(In [2939]) Constraints are now deactivated at file import. Integrity tests added. See #490.

comment:6 Changed 15 years ago by xave

  • Status changed from new to closed
  • Resolution set to worksforme

J'ai refait des essais, je ne réussis plus à reproduire ce bug.

Note: See TracTickets for help on using tickets.

Sites map