mentors.debian.net's flakiness

Submitted by Christoph Haas on Mon, 09/08/2008 - 09:25

A lot of users of mentors.debian.net have already mailed, irced and jabbered me. (Fortunately nobody rang at my door.) The service was pretty unreliable in the past weeks. If I'm not mistaken it was due to not enough RAM. Unfortunately it's a VPS server (sponsored for that purpose by vpslink.com) that has 1 GB RAM but doesn't allow to set up swap for the rare cases where a 100 MB more RAM would save the world. Took me a while to figure out where the infrequent "MySQL server has gone away" came from. That lead to packages either left in the incoming directory or being thrown away randomly during the import into the repository because not all database error conditions have been properly caught.

The better news is that the debexpo project done during this year's Google Summer of Code is now done. The Pylons-based software was written to suit the need for easy-to-use web-based Debian package repositories like PPAs or debpool. I am currently working on a few subleties of debexpo before it will be used for mentors.debian.net. I intend to announce the beta version of mentors.debian.net in about a week. And I hope for lots of feedback then.

And let's hope I get the RAM situation improved on the server. The mentors backend was the only software using the MySQL database. With debexpo (which uses SQLAlchemy for database interaction) I'm free to use PostgreSQL or even SQLite.

Update: I should have taken my logs more seriously. The "OperationalError: (2006, 'MySQL server has gone away')" was meant seriously. Now it's also clear why it didn't happen all of the time. MySQL's default connection timeout is 8 hours. It's now set to 3 days so things shouldn't break unless maintainer's stop uploading packages for longer than 3 days. Does anyone know if MySQL can be taught to not cancel idle connections? I read rumors about a reconnect=1 argument to Python's MySQLdb module but I didn't find it in the docs. This is really a stupid default behavior.

The contents of this web site is Copyright © 2000-2011 Christoph Haas - Impressum/Imprints -  Donations welcome

Drupal theme by Kiwi Themes.