Last modified: 2013-12-02 12:58:35 UTC
Currently, we run the PHPUnit test suite using the SQLite backend using Jenkins upon committing code into core. However, Wikimedias's setup relies on MySQL and MySQL is also MediaWiki's suggested DBMS. Hence, it would be great to have Jenkins additionally run the PHPUnit test suite using the MySQL backend. P.S.: A similar bug is said to exist in bugzilla—however, I could not find such a bug.
*** This bug has been confirmed by popular vote. ***
fwiw I would love to see this happen, given that WMF's production (and labs) backend is MySQL and not SQLite.
Any update on this?
Could someone provide examples of the sort of bugs or crashes that would have been caught by using MySQL as the back-end for the unit tests?
There are a couple cases I'm aware of with using SQLite: 1. The math extension can not run all of its tests, since SQLite has global indices. See https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/extensions/Math.git;a=blob;f=tests/MathDatabaseTest.php;h=f909f7f20cdcf7814d2ac9c08bc777c25401e764;hb=refs/heads/master#l86 . Judging by that comment, all other databases including MySQL work. 2. Similarly, Echo had an issue since SQLite doesn't have "ALTER TABLE CHANGE" (https://gerrit.wikimedia.org/r/#/c/64594/). Of course, it's preferable to support multiple databases, including SQLite if possible. But it would be very useful to also test in MySQL both because the behavior can differ, and because SQLite sometimes just doesn't work for what we currently need.
Since I started working on CI we always wanted to test against different database backend. I am not sure the full test suite is really needed, but we should at least run the installer, that will most probably catch up the commons issues.
Not a priority