Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa
Archives de la liste
- From: Serge Aumont <adresse@cachée>
- To: adresse@cachée
- Subject: Re: [sympa-fr] Erreur lors du upgrade
- Date: Tue, 01 Mar 2011 08:59:54 +0100
Le 16/02/11 18:49, TDE a écrit :
Bonjour,Bonjour
Lors du upgrade, au moment de la mise à jour de la base (" Updating the new robot_subscriber and robot_admin Db fields..."), j'ai une erreur SQL :
DBD::mysql::db do failed: Duplicate entry 'xxx' for key 'PRIMARY' at /mail/sympa_ldif/bin/Upgrade.pm line 237.
err Upgrade::upgrade() Unable to execute SQL statement "UPDATE subscriber_table SET robot_subscriber='xxxx' WHERE (list_subscriber='xxxx')" : Duplicate entry 'xxx'
Cela se produit lorsque l'on a comme entrée :
(1) robot1 => liste1 => user toto
(2) robot2 => liste1 => user toto
or la clé primaire est {robot1,liste1,user} pour la table subscriber_table
En ligne 237, nous avons :
my $statement = sprintf "UPDATE %s_table SET robot_%s=%s WHERE (list_%s=%s)",
<=>
UPDATE subscriber_table SET robot_subscriber=robot2 WHERE (list_subscriber=liste1)
je ne vois pas trop à quoi ça sert car le champs robot_subscriber est correctement remplis (j'avais supprimé auparavant dans mon dump bdd avant, tous les INSERT INTO sans de robot définis)
mais on vois bien que le update va rentrer en conflit avec l'entrée (2)
J'ai changé le WHERE en rajoutant la condition de faire le UPDATE si robot_subscriber est vide mais je ne sais pas si c'est cela peut provoquer des pb futurs.
Vous ne précisez pas la version depuis laquelle vous faites l'Upgrade ni vers quelle version.
N'auriez vous pas une version très ancienne qui ne permettez pas d'avoir des listes homonymes dans des robots différents ?
Vous avez bien analysé le problème et vous avez pris une bonne solution.
Serge Aumont
-
Re: [sympa-fr] Erreur lors du upgrade,
Serge Aumont, 01/03/2011
- <Suite(s) possible(s)>
- Re: [sympa-fr] Erreur lors du upgrade, Florin Grosu, 01/03/2011
Archives gérées par MHonArc 2.6.19+.