Submitted by emena on
Hello,
J'ai voulu améliorer un type en créant cinq champs CCK supplémentaires. J'en ai 15 différents au total. Depuis, je galère. je n'arrive même plus à lancer mon site, j'ai d'entrée de jeux le message suivant :
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 8388608 bytes) in /srv/d_amh-ct/www/adm.testct.be/htdocs/sites/all/modules/contrib/Formatage contenu/cck/includes/content.crud.inc on line 499
J'ai ajouté de la mémoire RAM (512M) de plus que les 256M qu'il y avait avant. Cela n'a rien changé.
Le pire c'est que la ligne question est un commentaire :
while ($instance = db_fetch_array($db_result)) {
// Unserialize arrays.
foreach (array('widget_settings', 'display_settings', 'global_settings', 'db_columns') as $key) {
.....
}
Bref, je tourne en rond et votre aide est la bienvenue.
EM
P.-S. Je suis chez Gandi
C’est la mémoire allouée à
Permalien Soumis par mdupont@drupal.org le 29 Janvier, 2011 - 22:20
C'est la mémoire allouée à PHP qui est insuffisante (128 Mo d'après ton message d'erreur). Si ta page d'accueil est particulièrement lourde (Views complexes, nombreux nodes, etc) ou que ton site contient beaucoup de modules, 128 Mo ne seront pas suffisants. Tu peux augmenter la mémoire allouée à PHP dans ton fichier .htaccess ou directement dans le php.ini si tu y as accès.
hello, Merci de me
Permalien Soumis par emena le 29 Janvier, 2011 - 22:39
hello,
Merci de me répondre.
php.ini : Je ne sais pas où il est, je n'y ai sans doute pas accès.
.htacces : J'ai mis
php_value memory_limit 512M
cela n'a pas marché. J'ai misphp_value memory_limit 1024M
.Du coup, je me retrouve avec un warning kilométrique et, en haut de ma page, le message suivant :
Warning: Got a packet bigger than 'max_allowed_packet' bytes query: INSERT INTO ctr_watchdog (uid, type, message, variables, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '%message in %file on line %line.', 'a:4:{s:6:"%error";s:12:"user warning";s:8:"%message";s:19806431:"Got a packet bigger than 'max_allowed_packet' bytes\nquery: UPDATE ctr_cache_content SET data = 'a:4:{s:11:\"field types\";a:7:{s:4:\"date\";a:4:{s:5:\"label\";s:4:\"Date\";s:11:\"description\";s:115:\"Stocker une date dans la base de données au format date ISO, recommandé pour des dates historiques ou partielles.\";s:6:\"module\";s:4:\"date\";s:10:\"formatters\";a:5:{s:7:\"default\";a:4:{s:5:\"label\ in /srv/d_amh-ct/www/adm.testct.be/htdocs/includes/database.mysqli.inc on line 135
J'ai vidé tout les cache dans la DB, en particulier ctr_watchdog. Rien y a fait. Je ne vois vraiment de qu'elles date il parle.
Une précision, mon site est assez limité, quelques modules mais pas views, un nombre limité de blocs, c'est cela qui me fait douter. Comment avec, juste 4 champs de plus, il faut passer de 128M à 3 fois plus.
Si tu as toujours des idées, elles sont les bienvenues
EM
Hello, Je ne vous envoie pas
Permalien Soumis par emena le 30 Janvier, 2011 - 20:30
Hello,
Je ne vous envoie pas la totalité du Warning, il est vraiment kilométrique : mais en voici le début.
Une précision, je ne sais plus accéder à mes pages, ni me connecter, je n'ai que ce ces deux messages.
user warning: Got a packet bigger than 'max_allowed_packet' bytes query: UPDATE ctr_cache_content SET data = 'a:4:{s:11:"field types";a:7:{s:4:"date";a:4:{s:5:"label";s:4:"Date";s:11:"description";s:115:"Stocker une date dans la base de données au format date ISO, recommandé pour des dates historiques ou partielles.";s:6:"module";s:4:"date";s:10:"formatters";a:5:{s:7:"default";a:4:{s:5:"label";s:11:"Par défaut";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:15:"format_interval";a:4:{s:5:"label";s:19:"Comme Temps Ecoulé";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:4:"long";a:4:{s:5:"label";s:4:"Long";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:6:"medium";a:4:{s:5:"label";s:5:"Moyen";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:5:"short";a:4:{s:5:"label";s:5:"Short";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}}}s:9:"datestamp";a:4:{s:5:"label";s:9:"Datestamp";s:11:"description";s:125:"Stocker une date dans la base de données au format timestamp, format obsolète destiné au support des données historiques.";s:6:"module";s:4:"date";s:10:"formatters";a:5:{s:7:"default";a:4:{s:5:"label";s:11:"Par défaut";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:15:"format_interval";a:4:{s:5:"label";s:19:"Comme Temps Ecoulé";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:4:"long";a:4:{s:5:"label";s:4:"Long";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:6:"medium";a:4:{s:5:"label";s:5:"Moyen";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:5:"short";a:4:{s:5:"label";s:5:"Short";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}}}s:8:"datetime";a:4:{s:5:"label";s:8:"Datetime";s:11:"description";s:173:"Stocker une date dans la base de données dans un champ datetime, recommandé pour des dates et heures complètes, qui peuvent avoir besoin de conversions de fuseau horaire.";s:6:"module";s:4:"date";s:10:"formatters";a:5:{s:7:"default";a:4:{s:5:"label";s:11:"Par défaut";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:15:"format_interval";a:4:{s:5:"label";s:19:"Comme Temps Ecoulé";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:4:"long";a:4:{s:5:"label";s:4:"Long";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:6:"medium";a:4:{s:5:"label";s:5:"Moyen";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}s:5:"short";a:4:{s:5:"label";s:5:"Short";s:11:"field types";a:3:{i:0;s:4:"date";i:1;s:9:"datestamp";i:2;s:8:"datetime";}s:15:"multiple values";i:1;s:6:"module";s:4:"date";}}}s:4:"text";a:4:{s:5:"label";s:5:"Texte";s:11:"description";s:45:"Enregistre le texte dans la base de données.";s:6:"module";s:4:"text";s:10:"formatters";a:3:{s:7:"default";a:4:{s:5:"label";s:11:"Par défaut";s:11:"field types";a:1:{i:0;s:4:"text";}s:15:"multiple values";i:1;s:6:"module";s:4:"text";}s:5:"plain";a:4:{s:5:"label";s:12:
Maintenant ton message dit
Permalien Soumis par sahuni le 31 Janvier, 2011 - 15:26
Maintenant ton message dit que tu as un problème avec 'max_allowed_packet'.
Je me souviens qu'il y a plusieurs posts dans ce forum à ce sujet. Tu trouveras sans doute la solution dans l'un d'eux.
Hello, Merci de prendre la
Permalien Soumis par emena le 31 Janvier, 2011 - 20:39
Hello,
Merci de prendre la peine de me répondre.
En fait, j'ai déjà cherché, mais si je peux effectivement tenter de mettre un paquet plus grand, rien ne me dit pourquoi ce paquet apparait, ni pourquoi, le fait d'avoir ajouté quelques champs CCK provoque de telles réactions.
Encore moins pourquoi, 5 champs de plus nécessite 512M De mémoire RAM supplémentaires... Dans les réponses, il y a quelqu'un qui a eu le problème à l'import de la traduction du module "_l10n_update_batch_download", personnellement, je n'ai activé, et désactivé, que CCKJJMMHH. ça n'a pas l'air d'être cela.
Bref, comme on dit en médecine, je n'ai pas envie de traiter le symptôme et de masquer le problème.
Il y a autre chose, et je galère.
EM
Il ne s’agit pas de RAM, mais
Permalien Soumis par vincent59 le 31 Janvier, 2011 - 22:27
Il ne s'agit pas de RAM, mais de la taille des paquets MySQL (base de données).
Il faut déjà savoir si tu peux modifier ce paramètre (à mon avis pas possible en hébergement mutualisé).
Ensuite, vu le warning, c'est le CCK date qui n'a pas l'air optimisé et qui tente de mettre dans les tables de cache une quantité phénoménale de données, ce qui "explose" la taille des paquets transmis à la base de données.
Le détail de la requête est donné dans le warning. En fait Drupal "sérialise" les données, c'est à dire qu'il concatène toute une série de données dans une seule ligne de la base de cache, et à mon avis là il fait une indigestion...
Si tu as un accès à la base, tu peux faire un
SHOW VARIABLES LIKE 'max_allowed_packet'
Plus d'infos là : http://drupal.org/node/321210
hello, Merci de
Permalien Soumis par emena le 31 Janvier, 2011 - 22:59
hello,
Merci de répondre
Excusez-moi, je sais qu'il ne s'agit pas de RAM dans ce dernier message, mais le problème n'est pas ce dernier message que je n'ai mis que pour le cas ou quelqu'un comprendrait le contenu du paquet trop gros. J'avais vu cet article, je vous promets, juré, craché, j'ai cherché.
Le problème est que depuis l'ajout de 5 champs CCK, ce qui porte au total à 15 le nombre de mes champs CCK, plus rien ne marche. Je peux juste laisser mes utilisateurs voir le site actuel, je ne peux même plus créer un node.
Au départ, il m'a dit que je manquais de mémoire RAM, j'ai du en rajouter 512M pour pouvoir remettre mon site ne fonction en mode consultation. Mais cela ne suffit toujours pas pour supprimer ces 5 f****u champs.
Je crains que ma base de données soit vérolée et je ne sais pas quoi faire. Je ne peux même pas restaurer à partir d'un backup, elle est plus grosse que les 2M fatidiques, elle fait 2,5M. J’espère que mon hébergeur va m'aider, mais ??
Et surtout, tant que je n'ai pas trouvé l'erreur, je ne sais pas si le problème est résolu.
EM
Essaie déjà d’enlever ce
Permalien Soumis par sahuni le 1 Février, 2011 - 08:21
Essaie déjà d'enlever ce nouveau champ cck date, vide le cache et regarde ce que ça donne. Ca te donnera une piste.
Hello, Bonjour, une bonne
Permalien Soumis par emena le 1 Février, 2011 - 09:21
Hello,
Bonjour, une bonne nuit de sommeil et je reprends un peu d'espoir.
J'ai vidé le cache, mais la première manifestation du problème a été que je ne pouvais plus accéder aux champs. Si je vais dans « type de contenu » -> « gérer les champs », ou « type de contenu » -> « afficher les champs », j'ai un message :
Fatal error: Maximum execution time of 30 seconds exceeded in .../cck/includes/content.crud.inc on line 501
Attention, je ne pense pas que ce soit un problème de manque de temps. C'est de nouveau la même question, j'ai cela depuis ces 5 champs. J'ai augmenté mes ressources, de manière importante, cela n'a rien changé.
Quelque part, quelque chose boucle, dans doute, vous avez raison autour d'une date. Je n'avais pas utilisé CCK date, mais cck_hhmmss.
La chronologie est la suivante
Au moment où tu as envoyé ton message, je regardais la base de données, elle est bien incohérente, je n'ai pas de table « field » pour ces trois champs dans la base de données.
Si je regarde mes backups quotidiens
Bonne journée
EM
Hum, Ca vient peut-être de ce
Permalien Soumis par sahuni le 1 Février, 2011 - 09:29
Hum, Ca vient peut-être de ce module, tout neuf, pratiquement jamais utilisé par la communauté.
Essaie de le désactiver, puis ensuite met une issue sur ce module.
Hello, Oui sans doute, on ne
Permalien Soumis par emena le 1 Février, 2011 - 11:05
Hello,
Oui sans doute, on ne m'y reprendra plus de si tôt d'essayer de nouveaux modules.
Je l'ai desactivé au moment ou j'ai supprimé les champs de ce type et que j'ai constaté que ceux en mode texte ne marchait pas.
Par contre, comme restaurer la cohérence de ma DB ?
Est-ce que quelqu'un sait ou trouver, de préférence en français, le dessin des nodes ?
EM
Tu as bien tout nettoyé ce
Permalien Soumis par sahuni le 9 Février, 2011 - 08:44
Tu as bien tout nettoyé ce qui vient de ce module? Je vois sur un autre post que tu as toujours des problèmes mémoire.
Sur un de mes sites, j'ai environ 50 champs cck, sans problème, et mon serveur est vraiment configuré au minimum concernant la mémoire etc.
Hello, J’ai beaucoup nettoyé,
Permalien Soumis par emena le 9 Février, 2011 - 09:01
Hello,
J'ai beaucoup nettoyé, j'ai rendu à ma base de données sa cohérence en supprimant le champ problématique, mais mes problèmes de performances restent, je cherche encore.
Je viendrais clôturer ce post en disant ce qui s'était passé, si je trouve.
En attendant, je propose de continuer sur l'autre post pour éviter les incohérences.
Merci de ton intérêt
EM
Hello, Juste pour donner
Permalien Soumis par emena le 19 Février, 2011 - 18:40
Hello,
Juste pour donner l'info et clôturer le point.
Je ne sais pas exactement comment, je n'ai pas réussi à reproduire la situation, un de mes champs CCK a mal été enregistré ou mal défini dans la base de données.
Cela a provoqué un accroissement important de mes pages. Celles-ci sont devenues énormes (100M) et les performances ont diminué de manière importante.
Pour récupérer une situation, j'ai dû supprimer le type dans lequel était mon champ mal enregistré.
Pour ceux qui pourraient avoir des problèmes et voudraient estimer les tailles normales :
Merci de votre aide
EM