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.

Details

Related Gerrit Patches:

Event Timeline

Anomie created this task.Sep 21 2016, 5:37 PM

Change 312049 had a related patch set uploaded (by Aaron Schulz):
Check mSessionTempTables in Database::tableExists()

https://gerrit.wikimedia.org/r/312049

Change 312049 merged by jenkins-bot:
Check Database::mSessionTempTables in Database::tableExists()

https://gerrit.wikimedia.org/r/312049

Anomie closed this task as Resolved.Sep 21 2016, 7:16 PM
Anomie assigned this task to aaron.