Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] Problème de distribution de messages avec des pièces jointes

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: Etienne MELEARD <adresse@cachée>
  • To: adresse@cachée, Sébastien JEAN <adresse@cachée>
  • Subject: Re: [sympa-fr] Problème de distribution de messages avec des pièces jointes
  • Date: Wed, 16 May 2012 14:02:05 +0200

Bonjour,

Une piste, les messages sont stockés en base64 pour des raisons d'encodage, et le passage en base 64 provoque une augmentation de la taille entre 30 et 60% (pas facilement prédictible).

Par contre la table bulkspool doit se vider, il y a une tache qui doit s'en occuper lorsque tout les packets correspondants dans la bulkmailer table ont été traités, il faudrait voir si il n'y a pas un souci avec la tache en question.

Cordialement,

Etienne MELEARD
SAU - Renater


Le 16/05/12 13:51, Sébastien JEAN a écrit :
Bonjour,

Nous rencontrons des problèmes de distribution de mails contenant des pièces
jointes (le blocage ne venant ni de la configuration de la liste, ni d'une
limitation liée au MTA).

Les logs de Sympa indique ceci :

May 10 16:37:32 vacherin sympa[1850]: err Bulk::store() Unable to add message in
bulkspool_table "INSERT INTO bulkspool_table (messagekey_bulkspool,
messageid_bulkspool, message_bulkspool, lock_bulkspool, dkim_d_bulkspool,
dkim_i_bulkspool, dkim_selector_bulkspool, dkim_privatekey_bulkspool,
dkim_header_list_bulkspool) VALUES ([nos valeurs])"; error : Got a packet bigger
than 'max_allowed_packet' bytes

La valeur de la variable « max_allowed_packet » étant de 16Mo sur le serveur
MySql utilisé par Sympa.

Le problème est le suivant : ce message d'erreur (et la non distribution qui
en découle) se produit dès qu'un mail dépassent environ 8,5Mo soit une taille
près de 50% inférieur à la limitation MySql.

J'ai donc fait une petite expérience :
-Dump de la table « bulkspool_table » (dump1.sql)
-J'envoi un mail à une liste de diffusion contenant une pièce jointe de 8.3Mo
(mon message est correctement distribué). La taille finale du mail (suite à
l'encodage de la pj) est de 11Mo.
-Nouveau dump de la table « bulkspool_table » (dump2.sql)
-un petit diff : "diff dump1.sql dump2.sql>diff.sql"
-le fichier diff.sql (qui ne contient qu'un seul « insert into…», donc seul
mon message a été stocké entre les 2 dump) pèse 16Mo !

(pour info, si j'envoi un mail de quelques 100Ko de plus, le message se
retrouve bloqué. Cf comportement décrit au début de ce mail)

Est-il normal qu'un mail de 11Mo génère une entrée dans la base de données
Mysql d'une taille de 16Mo soit une inflation de près de 50% (45% pour être
exact) ? De notre point de vue, cela paraît énorme et pas très compréhensible
comme fonctionnement…

J'en profite pour poser une question à propos de la table « bulkspool_table »
qui atteint une taille de 500Mo. Existe une procédure de purge des vieux
messages ?

En vous remerciant par avance.

Sébastien JEAN

---
Sous-direction Infrastructure
Direction du Numérique - Université de Lorraine
Tél : 03.83.59.61.49 06.03.19.73.46






Archives gérées par MHonArc 2.6.19+.

Haut de le page