Tuesday, 8 August 2006

Making MySQL Linux Standard Base 3.1 compliant

At OSCON, I met with Ian Murdock, Jim Zemlin and Amanda McPherson of FSG (http://www.freestandards.org), together with our founders Monty and David. We discussed ways of making MySQL Linux Standard Base 3.1 compliant.


Starting MySQL 5.1, we will strive for LSB 3.1 compliance. We'll make the packages (RPM files, dpkg files) LSB compliant. Tarballs will still exist, but for other purposes, and will not aim at LSB compliancy.

LSB compliancy is planned to make MySQL behave (even more) like expected by users, and to reduce the number of packages built by MySQL. This reduction will simplify choice for users, and reduce build work for us. LSB compliant packages should at least cover RHEL 4 onwards, SuSE 9 onwards, Ubuntu, Red Flag and other distributions. (RHEL 3 will never be LSB compliant but will be end-of-lifed sooner).

Given that MySQL 5.1 is already in beta, it might be that the LSB compliant packages need to be made available in addition to such packages, that the LSB compliant ones are eventually supposed to substitute. This would be the case, if directories move so much that simple package upgrades will create problems for beta users of MySQL 5.1. We will assess this separately, once we're there.

The next step is to test the MySQL 5.1 builds against the LSB test suite, running the appcheck validation tool against a MySQL build. And then we will set up a pristine LSB testing environment. This will affect not just our Build team, but also our Architecture, QA and Maintenance teams.

To achieve LSB compliance, I expect us to have

  • to fix functions ("MySQL 5.1 now uses function X, the equivalent LSB function is Y")

  • to set up directories differently

Thanks to Ian, Jim and Amanda (and Monty and David) for a good meeting! Looking forward to making MySQL LSB compliant together.