I have upgraded the MysqlMemberships.py member adaptor, so that it uses only one connection for all lists, and not one connection per list (as it did before).
Everything works fine (only one day of operation though), except when the mysql link is broken (I stopped mysqld to check that). Then I get this error:
File "/var/local/mailman/Mailman/MysqlMemberships.py", line 132, in _prodServerConnection mm_cfg.connexion.close() _mysql_exceptions . ProgrammingError : closing a closed connection
I guess I could use help from someone who knows more python than me. If you want to have a look at the code it's here: http://trac.rezo.net/trac/rezo/browser/Mailman/MySQLMemberAdaptor/MysqlMembe...
I have upgraded MysqlMemberships.py member adaptor once again, this time solving (I think) the problem of disconnection/reconnection when the link to the SQL server has died.
In my tests it works fine (reconnects) when I kill the link with "mysqladmin kill NNN"
However I don't know what strategy is good when you need to reconnect and the server is really dead. Here I die (and Mailman shunts the message); but couldn't it try to unshunt when MySQL "wakes up"?
As usual if you want to have a look at the code it's here: http://trac.rezo.net/trac/rezo/browser/Mailman/MySQLMemberAdaptor/MysqlMembe...