Page MenuHomePhabricator

Flow's initFlowExtension() method causes db upgrade to fail
Open, Needs TriagePublic

Description

When trying to upgrade from 1.27 to 1.31 I had a problem similar to the one that @saper mentions here in that Flow had to be disabled to allow the upgrade to continue.

Backtrace:

$ php maintenance/update.php --quick
[f1176bd1dfbfee6a5eacda68] [no req]   Wikimedia\Rdbms\DBQueryError from line 1457 of includes/libs/rdbms/database/Database.php: A database query error has occurred. Did you forget to run your application's database schema updater after upgrading? 
Query: SELECT  ug_user,ug_group,ug_expiry  FROM `user_groups`    WHERE ug_user = '31674'  
Function: UserGroupMembership::getMembershipsForUser
Error: 1054 Unknown column 'ug_expiry' in 'field list' (10.5.5.1)

Backtrace:
#0 includes/libs/rdbms/database/Database.php(1427):
    Wikimedia\Rdbms\Database->makeQueryException(string, integer, string, string)
#1 includes/libs/rdbms/database/Database.php(1200):
    Wikimedia\Rdbms\Database->reportQueryError(string, integer, string, string, boolean)
#2 includes/libs/rdbms/database/Database.php(1653):
    Wikimedia\Rdbms\Database->query(string, string)
#3 includes/user/UserGroupMembership.php(318):
    Wikimedia\Rdbms\Database->select(string, array, array, string)
#4 includes/user/User.php(1571):
    UserGroupMembership::getMembershipsForUser(integer, Wikimedia\Rdbms\DatabaseMysqli)
#5 includes/user/User.php(3514):
    User->loadGroups()
#6 /home/mah/client/cop-upgrade/extensions/Flow/includes/TalkpageManager.php(260):
    User->getGroups()
#7 /home/mah/client/cop-upgrade/extensions/Flow/includes/Conversion/Utils.php(470):
    Flow\TalkpageManager->getTalkpageManager()
#8 /home/mah/client/cop-upgrade/extensions/Flow/includes/Conversion/Utils.php(320):
    Flow\Conversion\Utils::generateForwardedCookieForCli()
#9 /home/mah/client/cop-upgrade/extensions/Flow/includes/Conversion/Utils.php(258):
    Flow\Conversion\Utils::makeVRSObject()
#10 /home/mah/client/cop-upgrade/extensions/Flow/includes/Conversion/Utils.php(228):
    Flow\Conversion\Utils::getVRSObject()
#11 /home/mah/client/cop-upgrade/extensions/Flow/Hooks.php(167):
    Flow\Conversion\Utils::isParsoidConfigured()
#12 includes/Setup.php(940):
    FlowHooks::initFlowExtension()
#13 maintenance/doMaintenance.php(81):
    require_once(string)
#14 maintenance/update.php(245):
    require_once(string)
#15 {main}