Vous n'êtes pas identifié(e).
13 février 2024 Sortie de Dotclear 2.29
Bonjour,
Préambule :
J'ai l'habitude depuis très longtemps d'effectuer régulièrement une synchro en local du contenu de mon multiblog en ligne (5 blogs / 1600 billets - SQL 18150 enr / 16,7 Mo). Pour cela je fait un export global (flat zip = 2Mo) que j'importe en local. Jusqu'à ce matin ça fonctionnait...
Constat :
...Jusqu'à ce matin où j'ai eu l'excellente idée de mettre à jour le Dotclear 2.5.3 en ligne pour le passer en 2.6-RC-r2480. J'ai à présent, au moment de l'import en local (Dotclear 2.5.3 ou 2.6-RC), le message "Duplicate entry '1' for key 'PRIMARY' (1062)"...
En résumé :
export avec 2.5 + import avec 2.5 : OK
export avec 2.5 + import avec 2.6 : OK
export avec 2.6 + import avec 2.5 : KO
export avec 2.6 + import avec 2.6 : KO
Pour m'en dépêtrer en local :
-1- suppressions de toutes les tables via phpMyAdmin (4 passes à cause des dépendances)
-2- création nouveau blog via (dotclear)/admin/install/index.php et nouvel utilisateur
-3- import (réussi) du même fichier d'export "2.6" qui avait posé auparavant un pb d'import "2.6" ou "2.5"
-4- lancement d'un script perso que j'utilise depuis très longtemps et qui convertit les URL et PATH de ma configuration "ligne" pour l'adapter à ma configuration "locale"
-5- remise à l'identique des différents paramètres liés au nouvel utilisateur. Fastidieux tant qu'on n'aura pas la possibilité (via nouveau plugin ou via amélioration de user:preferences... ???) d'exporter/importer une config utilisateur...
Conclusion :
C'est très lourd. Et un import en 2.6 d'un export "2.6" ne peut plus servir à synchroniser deux multi-blog. Pourquoi tant de haine ? :-)
Je suis prêt à créer un ticket s'il le faut.
Le B.A.BA : https://abc.dotaddict.org
La doc DC2 : https://fr.dotclear.org/documentation/2.0
Mes extensions : https://www.mirovinben.fr/blog/index.ph … pluginsDC2
Mes marqueurs de template : https://www.mirovinben.fr/blog/index.php?post/id3553
Hors ligne
Ca ressemble à un bug.
Pourrais-tu dans /plugins/importExport/inc/flat/class.flat.import.php, ligne 294, remplacer throw $e par :
throw new Exception($e->getMessage().sprintf(" Error on line : %s",$line->__line));
En relançant l'import, il devrait te dire quelle ligne du fichier de backup ne lui plaît pas.
Dyslexics have more fnu!
Hors ligne
Ca ressemble à un bug.
Pourrais-tu dans /plugins/importExport/inc/flat/class.flat.import.php, ligne 294, remplacer throw $e par :
throw new Exception($e->getMessage().sprintf(" Error on line : %s",$line->__line));
En relançant l'import, il devrait te dire quelle ligne du fichier de backup ne lui plaît pas.
J'ai fait la modif et j’obtiens le message DC2 :
Duplicate entry '1' for key 'PRIMARY' (1062) Error on line : 9998
ce qui correspond à
#9996
#9997 : [log log_id,user_id,log_table,log_dt,log_ip,log_msg,blog_id]
#9998 : "1","mirovinben","maintenance","2013-10-23 05:50:25","90.39.231.43","dcMaintenanceCache","default"
#9999
Nota : mon fichier d'export dézippé contient 18176 lignes et pèse 9968 Ko...
Le B.A.BA : https://abc.dotaddict.org
La doc DC2 : https://fr.dotclear.org/documentation/2.0
Mes extensions : https://www.mirovinben.fr/blog/index.ph … pluginsDC2
Mes marqueurs de template : https://www.mirovinben.fr/blog/index.php?post/id3553
Hors ligne
C'est bien un bug. tu peux créer le ticket s'il te plaît ?
Tu viens de mettre en évidence le premier dommage collatéral de l'utilisation des logs dotclear :)
Dyslexics have more fnu!
Hors ligne
Fait : http://dev.dotclear.org/2.0/ticket/1808
Merci de ton aide...
Dernière modification par Mirovinben (2013-10-23 13:40:17)
Le B.A.BA : https://abc.dotaddict.org
La doc DC2 : https://fr.dotclear.org/documentation/2.0
Mes extensions : https://www.mirovinben.fr/blog/index.ph … pluginsDC2
Mes marqueurs de template : https://www.mirovinben.fr/blog/index.php?post/id3553
Hors ligne
En attendant la prochaine release, si tu veux résoudre ton souci, il suffit d'ajouter
$this->con->execute('DELETE FROM '.$this->prefix.'log');
à la suite des autres $this->con->execute dans /plugins/importExport/inc/flat/class.flat.import.php, ligne 234. Ca devrait ressembler à :
$this->con->begin();
$this->con->execute('DELETE FROM '.$this->prefix.'blog');
$this->con->execute('DELETE FROM '.$this->prefix.'media');
$this->con->execute('DELETE FROM '.$this->prefix.'spamrule');
$this->con->execute('DELETE FROM '.$this->prefix.'setting');
$this->con->execute('DELETE FROM '.$this->prefix.'log');
(seule la dernière ligne a été ajoutée).
Dyslexics have more fnu!
Hors ligne
-1- Modification effectuée,
-2- test import du même fichier d'export généré ce matin,
-3- message "[15:57:05] Le contenu a été importé."
\o/
Le B.A.BA : https://abc.dotaddict.org
La doc DC2 : https://fr.dotclear.org/documentation/2.0
Mes extensions : https://www.mirovinben.fr/blog/index.ph … pluginsDC2
Mes marqueurs de template : https://www.mirovinben.fr/blog/index.php?post/id3553
Hors ligne
Vous n'êtes pas identifié(e).