Projet

Général

Profil

Anomalie #458

Erreur 500 a l'ajout de contribution et sur liste des membres

Ajouté par Michel Verdier il y a presque 5 ans. Mis à jour il y a presque 5 ans.

Statut:
Fermé
Priorité:
Haut
Assigné à:
Catégorie:
Core
Version cible:
-
Début:
15/12/2012
Echéance:
% réalisé:

100%

Version utilisée:

Description

Bonjour
Sur une base existante fonctionnant "bien' en 7.2 dev (sauf generation pdf...) mais avec les fichiers galette en 726, erreur 500 à l'execution de public/liste_membre.php et ajouter_contribution.Tout parait OK par ailleurs...
login
Base à recharger?
Merci et cdlt
Anatole

galette_run_2012-12-15.log Magnifier - Vers 15612-2012 vers 11h (82,5 ko) Michel Verdier, 15/12/2012 11:26


Demandes liées

Précède Galette - Evolution #459: Refonte de l'ajout/modification de contributions et transactions Nouveau 19/12/2012
Précède Galette - Evolution #460: Pagination des pages publiques Fermé 19/12/2012

Révisions associées

Révision 040c000c
Ajouté par Johan Cwiklinski il y a presque 5 ans

Externalize fiedls declaration to avoid memory issues; refs #458

Révision cec94d7f
Ajouté par Johan Cwiklinski il y a presque 5 ans

Do not load not needeed dependencies; refs #458

Some extra queries, like loading groups, were performed each time a member was
loaded; causing performances issues.

Révision 0e22b659
Ajouté par Johan Cwiklinski il y a presque 5 ans

Declare a variable to avoid multiple function calls; refs #458

Révision 22cc1b95
Ajouté par Johan Cwiklinski il y a presque 5 ans

Do not query Statuses labels for each member in list; refs #458

Révision 4e1f078e
Ajouté par Johan Cwiklinski il y a presque 5 ans

Improve new contribution page performances ; fixes #458

Révision 8e66d8dd
Ajouté par Johan Cwiklinski il y a presque 5 ans

Improve new transaction page performances ; refs #458

Révision eb5c16ad
Ajouté par Johan Cwiklinski il y a presque 5 ans

Do not load members dependencies for groups managers and members; refs #458

Historique

#1 Mis à jour par Johan Cwiklinski il y a presque 5 ans

La cause de l'erreur n'apparaît pas dans les logs (je n'en suis pas étonné, les erreurs "graves" tombent dans le log système, il n'est pas possible de faire autrement) ; je n'ai pas d'idée sur ce qui cloche...

As-tu essayé d'uploader les fichiers avec un client FTP différent ? Il peut aussi s'agir d'un problème de permissions sur les fichiers en question (ou sur un autre :/).

Tu parles par ailleurs d'une version 7.2 dev, qu'entends-tu par là ?

#2 Mis à jour par Michel Verdier il y a presque 5 ans

Il s'agit de la 7.2 qui etait en vigueur il y a deux mois et qualifié de 7.2dev en bas d'écran.
J'ai l'intention si j'ai pas trouvé qq chose d'ici lundi de demander les logs systeme, celeonet me les avait fourni une fois précédente.
Je vais déjà recharger (j'utilise 7z et Filezilla) ces deux fichiers avec un type différent (etait en automatique).
j'ai constaté effectivement des bizarretés à l'installation, je change pas de méthode et des fois ça marche, des fois pas....!!!
La derniere en date étant dans mon répertoire définitif , un affichage fortement dégradé sans menu latéral....
J'envoie la copie d'écran sur ta boite...

#3 Mis à jour par Johan Cwiklinski il y a presque 5 ans

Hum... Au vu de la capture d'écran, je pense que tu devrais avoir des infos supplémentaires en activant l'affichage des erreurs cette fois-ci...

#4 Mis à jour par Michel Verdier il y a presque 5 ans

Effectivement :
A l'ajout de contribution :
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 32 bytes) in /home/www/leclub404/www/essai/galette/includes/Smarty-3.1.12/sysplugins/smarty_internal_templateparser.php on line 784
A l'affichage de la liste des adherents
Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 80 bytes) in /home/www/leclub404/www/essai/galette/lib/Galette/Entity/Adherent.php on line 336

Et je crois que ça me rappelle quelque chose.....

#5 Mis à jour par Johan Cwiklinski il y a presque 5 ans

Hum... Il va vraisemblablement falloir que je fasse quelques tests avec d'avantage d'adhérents.

Bizarre que le problème ne se soit pas posé avec la version précédente ; mais bon il y a eu quelques modifications en deux mois. J'essaie de reproduire le souci ; merci pour les précisions ;)

#6 Mis à jour par Michel Verdier il y a presque 5 ans

Par contre le passe à 1 du m'a remis en erreur à la génération des pdf malgré que j'ai remis à zéro
@ini_set('display_errors', 0)apres l'affichage des erreurs comme si çela avait été conservé quelque part.....
bis repetitas...

#7 Mis à jour par Michel Verdier il y a presque 5 ans

Base à ta disposition !!!!!

#8 Mis à jour par Michel Verdier il y a presque 5 ans

Maintenant sur l'appel de ces fonctions (liste publique des adherents, ajout de contribution et gestion de mailing) le serveur me renvoie une page blanche.(sans erreur 500)
Est ce qu'il y a des choses à vider dans le répertoire template_c ?

#9 Mis à jour par Johan Cwiklinski il y a presque 5 ans

Bon, je pense que tu as « trop » d'adhérents. Donc, voilà, il faut virer des membres ; et galette fonctionnera nickel.

Quoi ? Comment ça on est pas le premier avril ? Haaaa, zut... :p

Bon, trêve de plaisanteries. Pour la page d'ajout de contributions, on avait effectivement déjà eu le souci, du fait du nombre de lignes à afficher dans la liste déroulante. En plus d'être lourd, ça n'a pas la moindre forme d'intérêt, cette liste est beaucoup trop longue pour être utile.
Lors du développement et des tests, je ne rencontre pas ce genre de soucis, car j'ai beaucoup moins d'adhérents enregistrés (une centaine tout au plus). J'ai testé avec une base de ~3000 adhérents, j'ai réussi à afficher la page des nouvelles contributions sur ma machine (j'ai probablement une configuration plus importante que sur ton hébergement).

Je pense qu'il ne sera pas possible de couper à une refonte de cette page là ; qui de toutes façons souffre de nombreux autres problèmes.

Ce que je propose, c'est de virer cette liste déroulante et de soit de passer par la liste des adhérents pour ajouter une nouvelle contribution (comme c'est actuellement le cas depuis la fiche de l'adhérent en fait), et de la remplacer par un système équivalent à la sélection des adhérents depuis une fiche auto.
Le problème, c'est que c'est du 100% javascript, et que ça ne pourra fonctionner sans. Je pense que le fait de passer systématiquement par la liste des adhérents pour l'ajout d'une nouvelle contribution n'est pas si problématique que ça (bien que ça puisse ne pas paraître évident de prime abord).

En ce qui concerne la liste des membres, ça me pose un autre problème... En effet, la liste est paginée, on ne charge donc par défaut que 20 adhérents, ce qui ne devrait pas claquer là :/ Les filtres de la liste sont réinitialisés à chaque connexion, est-ce que le problème se reproduit en affichant la liste sans modifier quoi que ce soit ?

Je veux bien la base, pour tester avec les mêmes données que toi :)

Hum... étrange que ces erreurs répétitives :/ Oui, tu peux essayer de nettoyer templates_c, ça peut aider (bien que j'ai rarement à le faire, même en développement).

#10 Mis à jour par Johan Cwiklinski il y a presque 5 ans

  • Priorité changé de Normal à Haut
  • Assigné à mis à Johan Cwiklinski
  • Catégorie mis à Core
  • Statut changé de Nouveau à In Progress

#11 Mis à jour par Michel Verdier il y a presque 5 ans

Oui, mais l'ajout de contribution ne marche pas en partant de la fiche adhérent.....
ça c'est plus embêtant....
Tout à fait d'accord que ajout en partant du menu est quasiment sans intérêt....
Il me semble qu'il y a plus que nous....faut que je recherche dans la liste de discussion.....

#12 Mis à jour par Michel Verdier il y a presque 5 ans

Bon, je refais le point sur les soucis rencontrés avec les évolutions :
- erreur 500 sur 3 appels
pages publiques /liste des membres
ajouter une contribution depuis le menu OU la fiche adhérent
mailing ( mais j'arrive plus à voir d'où...) depuis la 72 6 mais qui avait été corrigé (vais rechercher le post)
- en Mettant à 1 l'affichage des erreurs ,erreur sur génération des pdf, ok c'est normal, ce qui l'est moins c'est qu'en remettant à 0, l'erreur est toujours là et l'affichage ne renvoie plus une erreur 500 mais une page blanche....Il y aurait des choses à reinitialiser coté serveur?

je suppose qu'il n'y a pas de souci à changer de base dans config.inc.php ?
demain je vide les répertoires et reinstalle....Merci en tout cas!!!

#13 Mis à jour par Michel Verdier il y a presque 5 ans

je reprécise, la liste des adhérents marche bien....c'est l'appel depuis le menu pages publiques...

#14 Mis à jour par Johan Cwiklinski il y a presque 5 ans

Michel Verdier a écrit :

Oui, mais l'ajout de contribution ne marche pas en partant de la fiche adhérent.....
ça c'est plus embêtant....

Ce que je peux faire assez rapidement, c'est virer la liste quand on vient de la fiche d'un adhérent. On en pourra pas en changer du coup ; mais ça fonctionnera au moins.

Michel Verdier a écrit :

Bon, je refais le point sur les soucis rencontrés avec les évolutions :
- erreur 500 sur 3 appels
pages publiques /liste des membres
ajouter une contribution depuis le menu OU la fiche adhérent

Oui, OK, « normal » actuellement. J'ai dit une bêtise précédemment, la liste publique des membres n'est effectivement pas paginée :/

mailing ( mais j'arrive plus à voir d'où...) depuis la 72 6 mais qui avait été corrigé (vais rechercher le post)

Ok...

- en Mettant à 1 l'affichage des erreurs ,erreur sur génération des pdf, ok c'est normal, ce qui l'est moins c'est qu'en remettant à 0, l'erreur est toujours là et l'affichage ne renvoie plus une erreur 500 mais une page blanche....Il y aurait des choses à reinitialiser coté serveur?

Je suis parfaitement d'accord, ce n'est pas normal, et je ne constate pas ce comportement :/ Je soupçonne l'hébergeur d'avoir soit une config particulière, soit d'utiliser un système de cache ou assimilé quelqconque ; le PDF est généré directement à la volée depuis Galette ; rien n'est écrit sur le disque, et rien n'est stocké. Les erreurs ne devraient plus apparaître si on repasse à 0 :(

Donc, non, rien à réinitialiser côté serveur à priori ; je fais des changements de versions bien plus importants que ça sur mon poste (passage de 0.7.0 à 0.7.3dev par exemple) sans rencontrer la moitié de tes problèmes ; je ne comprend pas vraiment...

je suppose qu'il n'y a pas de souci à changer de base dans config.inc.php ?

Non, pas de soucis ;-)

demain je vide les répertoires et reinstalle....Merci en tout cas!!!

Ok, ça marche :)

#15 Mis à jour par Michel Verdier il y a presque 5 ans

HOURRA !!!! TOUT BAIGNE.....
J'étais prêt à alléger la base....selon tes recommandations...( en fait parmi les 3000 'adhérents' il a l'historique depuis 1982 que je tiens a priori à conserver ils ont résisté à toutes les révolutions informatiques , et en fait 1000 'actifs')
je dois dire que j'ai augmenté dans le php.ini la memory limit à 96M (le maxi autorisé)....
Vais tester sur mon autre sous domaine qui est resté en 32. Te tiens au courant of course....
(j'ai deux sous domaines essai.leclub404.com et galette.leclub404.com, ce dernier accueillera la production)
Suis donc en 727.
A suivre...

#16 Mis à jour par Michel Verdier il y a presque 5 ans

BINGO....
Je reproduis bien les erreurs avec la memory limit à 34....
Du coup je suis furax de pas avoir été voir par là plutôt....!!!!
Mais notre intérêt pour une solution galette hébergée par tes soins reste entier.
Simplement c'est moins pressant....on pourra démarrer en janvier

#17 Mis à jour par Michel Verdier il y a presque 5 ans

heu....
J'ai quand même un souci avec le mailing aux retardataires (bouton RAPPEL) qui me déclenche encore l'erreur 500, mais j'ai vraiment beaucoup de retardataires....
Les deux dernieres phrases du post précédent n'ont donc que plus de poids....

#18 Mis à jour par Johan Cwiklinski il y a presque 5 ans

« Alléger » la base n'est pas une solution, Galette devrait gérer ces cas sans trop de problèmes...

Je ne savais pas que tu pouvais modifier ton memory_limit, temporairement, ça te permettra de régler le souci contributions, mais pas les autres ; pour les listes, on charge beaucoup plus de données (probablement trop de fait).

Pour les rappels... Ben je suppose que c'est le même combat. Je regarde à tout ça rapidement.

#19 Mis à jour par Johan Cwiklinski il y a presque 5 ans

J'ai commencé à regarder ça de près... Ben, c'est pas joli :D

Je me rend compte que j'ai de nombreuses optimisations à apporter au code, notamment du côté de la mémoire (j'ai déjà fait quelques audits, mais qui n'incluaient pas les tests de mémoire).

Sur une liste affichée de 500 adhérents, il est possible de diviser par ~3 la mémoire utilisée, et par ~4 le temps nécessaire à la construction de la liste. C'est une première analyse, pour laquelle j'ai un peu tranché dans le lard ; mais ça prouve qu'une certaine amélioration est possible :-)

#20 Mis à jour par Johan Cwiklinski il y a presque 5 ans

  • % réalisé changé de 0 à 100
  • Statut changé de In Progress à Résolu

#21 Mis à jour par Johan Cwiklinski il y a presque 5 ans

  • Statut changé de Résolu à Fermé

Les corrections apportées en .8 devraient résoudre les soucis. J'ai créé de nouvelles demandes pour les autres modifications :)

Formats disponibles : Atom PDF