Projet

Général

Profil

Anomalie #575

Echec MàJ 0.7.4 : blocage à la mise à jour des tables

Ajouté par Pierre Jabot il y a plus de 4 ans. Mis à jour il y a plus de 4 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
Base de données
Version cible:
-
Début:
01/03/2013
Echéance:
% réalisé:

0%

Version utilisée:

Description

Bonjour,
sur OVH en PHP 5.3.16 je ne parviens pas à migrer de la version 0.7.3 à la 0.7.4.
Voici l'écran où se bloque la mise à jour des tables :

Si je laisse tomber et que je me connecte en superadmin, j'obtiens la même erreur que lors de la migration en 0.7.3 : je ne peux modifier aucune fiche. Sauf que la réinitialisation des champs avec le plugin admi tools ne fonctionne pas cette fois-ci...

capture_galette.gif (49,1 ko) Pierre Jabot, 01/03/2013 19:32


Demandes liées

Dupliqué par Galette - Anomalie #594: Problème de migration de la DB de la 0.63.3 vers 0.7.4 Rejeté 22/04/2013

Historique

#1 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

Si la mise à jour n'est pas terminée ; la base est foirée, il faut repartir de la sauvegarde.

La capture d'écran ne représente pas le problème initial ; mais un problème qui survient lorsque l'on réessaie cette mise à jour sous mysql... Il faut voir les erreurs dans les logs lorsque la première erreur survient (en partant de la sauvegarde).

#2 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

Pour résoudre le problème MySQL ; il faut ajouter, dans le fichier galette/install/sql/upgrade-to-0.74-mysql.sql, au tout début :

SET FOREIGN_KEY_CHECKS=0;

Et à la toute fin :

SET FOREIGN_KEY_CHECKS=1;

#3 Mis à jour par Pierre Jabot il y a plus de 4 ans

En ajoutant ces deux lignes ça m'a supprimé le 1er message d'erreur de la capture d'écran, mais pas le second, et je ne peux poursuivre la MàJ...
Le poblème avec ma base, c'est que je viens de voir que les sauvegardes d'OVH ne fonctionnent que sur les tables de type MyISAM et les tables de Galette sont pour la plupart de type InnoDB.
Quel autre moyen aurais-je de rectifier le tir ? Réinstaller une version antérieure de Galette ? (comment la récupérer le cas échéant ?)
Merci

#4 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

Le plus simple pour le coup, c'est de commenter la ligne qui foire dans le fichier .sql ; le champ a déjà été créé, ça ne posera donc pas de soucis. L'install devrait se terminer ensuite sans encombres.

Réinstaller une ancienne version ne servira à rien ; la base est altérée déjà, la seule solution pour revenir à un état antérieur, c'est la sauvegarde. Ceci dit, ces erreurs là ne sont pas gênantes, je pense que la toute première fois, tu en as eu une autre ; mais sans backup, on ne pourra pas la reproduire :/

J'ai appris très récemment aussi que OVH ne faisait pas de sauvegarde des bases innodb... D'autres se sont fait prendre :/

#5 Mis à jour par Pierre Jabot il y a plus de 4 ans

merci, l'installation s'achève en procédant ainsi.
Les erreurs que j'ai pu avoir précédemment, c'est lors de la mise à jour vers 0.7.3 où j'ai dû utiliser le plugin admin tools et activer la réinitialisation des champs 2 fois de suite.
Au niveau des anomalies que je constate actuellement :
  • des champs sont redevenus "requis" et en voulant les décocher dans la rubrique "Personnaliser les champs", je m'aperçois que plusieurs sont grisés
  • dans cette même rubrique, à chaque enregistrement, un antislash se rajoute à "Date d\\\'échéance"
  • toutes les personnes pour lesquelles j'avais indiqué "Mme" ou "Mlle" n'ont plus d'icône indiquant leur genre dans la liste des membres. En éditant leur fiche, le titre est bien sélectionné mais le genre est "non spécifié"

Cela fournit-il une indication sur les tables altérées et quoi faire pour les assainir ?

#6 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

Pierre Jabot a écrit :

  • des champs sont redevenus "requis" et en voulant les décocher dans la rubrique "Personnaliser les champs", je m'aperçois que plusieurs sont grisés

Il semble que MySQL fasse des facéties avec certains champs ; une anomalie a déjà été déclarée dans ce sens.

  • dans cette même rubrique, à chaque enregistrement, un antislash se rajoute à "Date d\\\'échéance"

Heu... Cette valeur n'est pas enregistrée, c'est juste l'affichage d'un champ traduit. Du coup, je ne vois pas pourquoi ça changerait... C'est bien au même endroit ?

  • toutes les personnes pour lesquelles j'avais indiqué "Mme" ou "Mlle" n'ont plus d'icône indiquant leur genre dans la liste des membres. En éditant leur fiche, le titre est bien sélectionné mais le genre est "non spécifié"

Une anomalie a été déclarée pour le coup des Mlle ; mais pas pour Mme (cf. ci-dessous)...

Cela fournit-il une indication sur les tables altérées et quoi faire pour les assainir ?

Pas vraiment, non. La base devrait être d'équerre ; mais pas forcément ses données. La mise à jour en 0.7.4 crée une nouvelle table et ajoute un champ dans la tables des adhérents. C'est uniquement quand on relance le script SQL que ces deux erreurs peuvent apparaître ; il y donc eu un « problème » quelconque dont il n'est pas fait mention ici (mais sans dump... pas possible de reproduire).

Le problème du genre manquant, c'est réparable cette requête :

UPDATE galette_adherents SET sexe_adh=2 WHERE titre_adh=2 OR titre_adh=3;

Attention à faire une sauvegarde de la base avant (une vraie sauvegarde :D) !

#7 Mis à jour par Pierre Jabot il y a plus de 4 ans

C'est bien au même endroit ?

Dans "Configuration" puis "Personnaliser les champs", c'est bien le nom du champ "Date d'échéance :" qui change à chaque fois que je clique sur "Enregistrer".
Après un simple changement de rubrique, les antislashs disparaissent mais reviennent un par un à chaque nouvel enregistrement...
A noter que ceci persiste après avoir converti l'encodage en UTF-8 avec le plugin ad hoc

mais pas pour Mme

Je suis allé trop vite, le problème ne concernait que les Mlle. Réglé avec la requête proposée : merci :-)

OK, donc je suis contraint de garder mes erreurs inconnues en attendant qu'elles se manifestent à la prochaine MàJ...

#8 Mis à jour par Pierre Jabot il y a plus de 4 ans

Je viens de constater en voulant modifier une fiche que j'ai le message "Champ obligatoire non renseigné : Identifiant" alors que l'identifiant est bien renseigné...

#9 Mis à jour par Roland Telle il y a plus de 4 ans

Pierre Jabot a écrit :

Je suis allé trop vite, le problème ne concernait que les Mlle.

C'est l'anomalie qui a été signalée dans le ticket #572

Je viens de constater en voulant modifier une fiche que j'ai le message "Champ obligatoire non renseigné : Identifiant" alors que l'identifiant est bien renseigné...

C'est l'anomalie qui a été signalée dans le ticket #565

Pierre, ce serait bien, pour aider Johan dans le traitement des anomalies, que vous suiviez sur le tracker celles qui pourraient vous concerner et que vous confirmiez ou infirmiez ce qui est déclaré, plutôt que d'ouvrir un ticket quasi identique ;)

#10 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

  • Catégorie mis à Base de données
  • Statut changé de Nouveau à In Progress
  • Assigné à mis à Johan Cwiklinski

#11 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

  • Statut changé de In Progress à Résolu

Voir commit 7751611e10

#12 Mis à jour par Johan Cwiklinski il y a plus de 4 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF