Page MenuHomePhabricator

DatabaseMysqlBase::tableExists() ignores temporary tables, breaking unit tests
Closed, ResolvedPublic

Description

rMW4e4b9997493c: Improve tableExists() for MySQL introduced a more optimized tableExists() method for MySQL, but the replacement does not report temporary tables as existing.

This causes various unit tests to start failing, e.g. https://gerrit.wikimedia.org/r/311270, https://gerrit.wikimedia.org/r/311514, because the testing framework uses temporary tables by default and CentralAuth attempts to add its tables if they don't already exist so the tests can run for people other than Jenkins.