Anomalie #1389
ferméEnregistrement des mails
Ajouté par Olivier Peyrat il y a environ 5 ans. Mis à jour il y a environ 5 ans.
0%
Description
Que ce soit à partir d'un E-Mailing existant pris comme modèle ou à partir d'un nouveau, lors de l'enregistrement, l'interface indique que "l'E-Mailing a été enregistré avec succès" mais il n'apparait pas dans la liste (voir fichier joint). A noter que le problème existe depuis quelques versions de Galette et est sans doute lié à un problème de configuration ou de droits sur le serveur ou la base (?).
J'ai le même problème avec la dernière version 9.3.1 que nous avons en intégration (autre instance de galette).
Merci
Olivier
Fichiers
Défaut_enregistrement_mail.odt (108 ko) Défaut_enregistrement_mail.odt | Olivier Peyrat, 07/02/2020 13:16 | ||
mail_storage_test_20200211.log (8,38 ko) mail_storage_test_20200211.log | Olivier Peyrat, 11/02/2020 15:47 |
Mis à jour par Johan Cwiklinski il y a environ 5 ans
- Statut changé de Nouveau à Commentaire
Je viens d'essayer sur mon instance locale, évidemment, je ne reproduit pas :/
Que disent les logs ?
Mis à jour par Olivier Peyrat il y a environ 5 ans
- Fichier mail_storage_test_20200211.log mail_storage_test_20200211.log ajouté
Bonjour,
Le log comprend ces lignes (je joins également le fichier correspondant) :
82.165.86.117 - 2020-02-11 14:34:44 - 3 - Query error: INSERT INTO `galette_mailing_history` (`mailing_sender`, `mailing_sender_name`, `mailing_sender_address`, `mailing_subject`, `mailing_body`, `mailing_date`, `mailing_recipients`, `mailing_sent`) VALUES ('246', 'APEM', 'asso_apem.secretariat@meteo.fr', 'test20200211-1534', 'Ceci est un test réalisé à 15h34 le 11/02/2020', '2020-02-11 15:34:44', 'a:0:{}', '0') PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'mailing_sender_name' in 'field list' in /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/zendframework/zend-db/src/Adapter/Driver/Pdo/Connection.php:379
Stack trace:
#0 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/zendframework/zend-db/src/Adapter/Driver/Pdo/Connection.php(379): PDO->query('INSERT INTO `ga...')
#1 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/zendframework/zend-db/src/Adapter/Adapter.php(205): Zend\Db\Adapter\Driver\Pdo\Connection->execute('INSERT INTO `ga...')
#2 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/lib/Galette/Core/Db.php(777): Zend\Db\Adapter\Adapter->query('INSERT INTO `ga...', 'execute')
#3 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/lib/Galette/Core/MailingHistory.php(518): Galette\Core\Db->execute(Object(Zend\Db\Sql\Insert))
#4 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/lib/Galette/Core/MailingHistory.php(402): Galette\Core\MailingHistory->store()
#5 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/routes/members.routes.php(2349): Galette\Core\MailingHistory->storeMailing()
#6 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#7 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/Handlers/Strategies/RequestResponse.php(40): call_user_func(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#8 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/Route.php(281): Slim\Handlers\Strategies\RequestResponse->_invoke(Object(Closure), Object(Slim\Http\Request), Object(Slim\Http\Response), Array)
#9 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/main.inc.php(237): Slim\Route->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#10 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\Route))
#11 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#12 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\Route))
#13 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\Route))
#14 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\Route->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#15 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/Route.php(268): Slim\Route->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#16 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/App.php(503): Slim\Route->run(Object(Slim\Http\Request), Object(Slim\Http\Response))
#17 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/akrabat/rka-slim-session-middleware/RKA/SessionMiddleware.php(47): Slim\App->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response))
#18 [internal function]: RKA\SessionMiddleware->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#19 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(RKA\SessionMiddleware), Array)
#20 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#21 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Slim\App))
#22 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/main.inc.php(438): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#23 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#24 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#25 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#26 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#27 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/main.inc.php(464): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#28 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#29 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#30 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#31 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#32 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/main.inc.php(528): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#33 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#34 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#35 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#36 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#37 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/main.inc.php(584): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#38 [internal function]: Closure->{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#39 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/DeferredCallable.php(57): call_user_func_array(Object(Closure), Array)
#40 [internal function]: Slim\DeferredCallable->_invoke(Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#41 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(70): call_user_func(Object(Slim\DeferredCallable), Object(Slim\Http\Request), Object(Slim\Http\Response), Object(Closure))
#42 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/MiddlewareAwareTrait.php(117): Slim\App->Slim\{closure}(Object(Slim\Http\Request), Object(Slim\Http\Response))
#43 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/App.php(392): Slim\App->callMiddlewareStack(Object(Slim\Http\Request), Object(Slim\Http\Response))
#44 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/slim/slim/Slim/App.php(297): Slim\App->process(Object(Slim\Http\Request), Object(Slim\Http\Response))
#45 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/includes/main.inc.php(597): Slim\App->run()
#46 /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/webroot/index.php(58): require_once('/homepages/31/d...')
#47 {main}
82.165.86.117 - 2020-02-11 14:34:44 - 3 - An error occurend storing Mailing | SQLSTATE[42S22]: Column not found: 1054 Unknown column 'mailing_sender_name' in 'field list'
Mis à jour par Johan Cwiklinski il y a environ 5 ans
Olivier Peyrat a écrit :
Bonjour,
Le log comprend ces lignes (je joins également le fichier correspondant) :
82.165.86.117 - 2020-02-11 14:34:44 - 3 - Query error: INSERT INTO `galette_mailing_history` (`mailing_sender`, `mailing_sender_name`, `mailing_sender_address`, `mailing_subject`, `mailing_body`, `mailing_date`, `mailing_recipients`, `mailing_sent`) VALUES ('246', 'APEM', 'asso_apem.secretariat@meteo.fr', 'test20200211-1534', 'Ceci est un test réalisé à 15h34 le 11/02/2020', '2020-02-11 15:34:44', 'a:0:{}', '0') PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column 'mailing_sender_name' in 'field list' in /homepages/31/d205573425/htdocs/galette-0.9.3-int/galette/vendor/zendframework/zend-db/src/Adapter/Driver/Pdo/Connection.php:379
Voilà qui est intéressant. Ce champ est ajouté dans la mise à jour pour Galette 0.9.1 (https://github.com/galette/galette/blob/master/galette/install/scripts/upgrade-to-0.91-mysql.sql) ; mais s'il n'a pas été appliqué, il y a des chances que les autres non plus. Cette instance est en mode dév (la version de la base n'est pas vérifiée dans ce cas) ? Il faudrait relancer la mise à jour (en faisant un backup avant, on ne sait jamais).
Mis à jour par Olivier Peyrat il y a environ 5 ans
Bonjour,
Je suis nouvelle administrateur galette pour notre association.
J'ai du mal à comprendre ce qu'il faut faire. Pour moi, galette est déjà en version 0.9.3. Je ne vois pas comment faire une rétro-mise à jour d'une version plus ancienne (0.9.1). Je serais preneuse d'un peu plus de détails sur la façon de procéder.
Pour info, j'ai l'habitude de suivre les instruction de ./installer.php pour les montées de version, une fois avoir rapatrié le nouveau code.
Désolée pour la question peut-être naïve,
Alice Dalphinet
Mis à jour par Johan Cwiklinski il y a environ 5 ans
Salut Alice, et bienvenue :)
Tu peux te créer un compte peut-être, je pense que ce sera plus simple (il sera toujours possible d'ajouter Olivier en observateur sur les demandes pour qu'il recoive les notifications aussi - si c'était ça le problème).
Olivier Peyrat a écrit :
Bonjour,
Je suis nouvelle administrateur galette pour notre association.
J'ai du mal à comprendre ce qu'il faut faire. Pour moi, galette est déjà en version 0.9.3. Je ne vois pas comment faire une rétro-mise à jour d'une version plus ancienne (0.9.1). Je serais preneuse d'un peu plus de détails sur la façon de procéder.
On ne peut pas rejouer une mise à jour dans Galette, plus de détails en suivant.
Pour info, j'ai l'habitude de suivre les instruction de ./installer.php pour les montées de version, une fois avoir rapatrié le nouveau code.
Oui, c'est bien cela qu'il faut faire.
Désolée pour la question peut-être naïve,
Non, pas de soucis :)
Donc, votre base a un problème, il manque au moins un champ qui aurait du être ajouté lors de la mise à jour en 0.9.1 ; mais qui pour une raison ou une autre, ne l'a pas été. Plusieurs possibilités :
- une instance de Galette en mode DEV (la version de la base n'est jamais vérifiée, il faut lancer à la main, et on oublie rapidement),
- un problème lors de cette mise à jour,
- l'utilisation d'une version en cours de développement, avec mise à jour de la base avant que ce nouveau champ soit ajouté.
Voilà pour les causes. Je pense que vous vous placez dans le 3ème cas.
Pour corriger, il n'y a pas de solution miracle. Le fichier SQL que je pointe dans mon précédent message regroupe toutes les instructions SQL jouées durant la mise à jour en 0.9.1. Il faut vérifier que chacun de ces changements est bien présent dans votre base de données, et lancer la requête correspondante au besoin.
S'il ne manque au final que les champs relatifs au "sender" des mailings, ça tendrait à confirmer que vous êtes bien dans le 3ème cas, et il suffira donc de rejouer les deux requêtes pour ajouter les champs. Si ce ne sont pas les seules modifications manquantes dans ce fichier, il faudra aussi vérifier les suivants (on avisera selon ton retour).
Mis à jour par Olivier Peyrat il y a environ 5 ans
Salut Johan,
Je te remercie pour tes explications précises. J'ai mieux compris.
Il y avait peut-être 4 lignes qui n'avait pas été jouées, dont celles sur galette_mailing_history.
J'ai vérifié sur des mises à jour plus récentes (92 et 93) et tout semble avoir été joué pour le coup.
On se placerait donc dans le cas de figure que tu cites, et il n'y aurait pas besoin que je me réforme dans la façon de mettre galette à jour. :)
Je vais voir avec Olivier s'il vaut mieux avoir un seul compte ou bien 2 sur redmine.
Merci encore,
Alice
Mis à jour par Olivier Peyrat il y a environ 5 ans
J'ai oublié de préciser que la manipulation a résolu le problème !
Mis à jour par Johan Cwiklinski il y a environ 5 ans
- Statut changé de Commentaire à Fermé
OK, content que ce soit résolu ; merci pour les retours :)