Page MenuHomePhabricator

CI failing with IndexPager::buildQueryInfo error: 'wikidb.unittest_globaluser.gu_id' isn't in GROUP BY
Closed, ResolvedPublic

Description

example build

17:32:05 + grep --color . mw-dberror.log mw-error.log
17:32:05 mw-dberror.log:Thu Mar 24 16:22:11 UTC 2022	ab89d3e955e9	wikidb-unittest_	Error 1055 from IndexPager::buildQueryInfo (MediaWiki\Extension\CentralAuth\Special\GlobalUsersPager), 'wikidb.unittest_globaluser.gu_id' isn't in GROUP BY (localhost:/workspace/db/quibble-mysql-6o4mh_6h/socket) SELECT  gu_name,MAX(gu_id) AS `gu_id`,MAX(gu_locked) AS `gu_locked`,MAX(lu_attached_method) AS `lu_attached_method`,(SELECT  GROUP_CONCAT(G.gug_group SEPARATOR '|')  FROM `unittest_global_user_groups` `G`    WHERE (G.gug_user = gu_id) AND (G.gug_expiry IS NULL OR G.gug_expiry >= '20220324162211')  ) AS `gug_group`,(SELECT  GROUP_CONCAT(IFNULL(G.gug_expiry, "null") SEPARATOR '|')  FROM `unittest_global_user_groups` `G`    WHERE (G.gug_user = gu_id) AND (G.gug_expiry IS NULL OR G.gug_expiry >= '20220324162211')  ) AS `gug_expiry`  FROM `unittest_globaluser` LEFT JOIN `unittest_localuser` ON ((gu_name = lu_name) AND lu_wiki = 'wikidb-unittest_')   WHERE gu_hidden_level = 0  GROUP BY gu_name ORDER BY gu_name LIMIT 51   localhost:/workspace/db/quibble-mysql-6o4mh_6h/socket
17:32:05 mw-dberror.log:#0 /workspace/src/includes/libs/rdbms/database/Database.php(1567): Wikimedia\Rdbms\Database->getQueryExceptionAndLog()
17:32:05 mw-dberror.log:#1 /workspace/src/includes/libs/rdbms/database/Database.php(1156): Wikimedia\Rdbms\Database->reportQueryError()
17:32:05 mw-dberror.log:#2 /workspace/src/includes/libs/rdbms/database/Database.php(1813): Wikimedia\Rdbms\Database->query()
17:32:05 mw-dberror.log:#3 /workspace/src/includes/libs/rdbms/database/DBConnRef.php(68): Wikimedia\Rdbms\Database->select()
17:32:05 mw-dberror.log:#4 /workspace/src/includes/libs/rdbms/database/DBConnRef.php(279): Wikimedia\Rdbms\DBConnRef->__call()
17:32:05 mw-dberror.log:#5 /workspace/src/includes/pager/IndexPager.php(459): Wikimedia\Rdbms\DBConnRef->select()
17:32:05 mw-dberror.log:#6 /workspace/src/includes/pager/IndexPager.php(281): IndexPager->reallyDoQuery()
17:32:05 mw-dberror.log:#7 /workspace/src/includes/pager/IndexPager.php(833): IndexPager->doQuery()
17:32:05 mw-dberror.log:#8 /workspace/src/includes/pager/AlphabeticPager.php(40): IndexPager->isNavigationBarShown()
17:32:05 mw-dberror.log:#9 /workspace/src/extensions/CentralAuth/includes/Special/SpecialGlobalUsers.php(78): AlphabeticPager->getNavigationBar()
17:32:05 mw-dberror.log:#10 /workspace/src/tests/phpunit/includes/specials/SpecialPageExecutor.php(115): MediaWiki\Extension\CentralAuth\Special\SpecialGlobalUsers->execute()
17:32:05 mw-dberror.log:#11 /workspace/src/tests/phpunit/includes/specials/SpecialPageExecutor.php(44): SpecialPageExecutor->getHTMLFromSpecialPage()
17:32:05 mw-dberror.log:#12 /workspace/src/tests/phpunit/structure/SpecialPageFatalTest.php(47): SpecialPageExecutor->executeSpecialPage()
17:32:05 mw-dberror.log:#13 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestCase.php(1490): SpecialPageFatalTest->testSpecialPageDoesNotFatal()
17:32:05 mw-dberror.log:#14 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestCase.php(1110): PHPUnit\Framework\TestCase->runTest()
17:32:05 mw-dberror.log:#15 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestResult.php(703): PHPUnit\Framework\TestCase->runBare()
17:32:05 mw-dberror.log:#16 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestCase.php(838): PHPUnit\Framework\TestResult->run()
17:32:05 mw-dberror.log:#17 /workspace/src/tests/phpunit/MediaWikiIntegrationTestCase.php(467): PHPUnit\Framework\TestCase->run()
17:32:05 mw-dberror.log:#18 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestSuite.php(626): MediaWikiIntegrationTestCase->run()
17:32:05 mw-dberror.log:#19 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestSuite.php(626): PHPUnit\Framework\TestSuite->run()
17:32:05 mw-dberror.log:#20 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestSuite.php(626): PHPUnit\Framework\TestSuite->run()
17:32:05 mw-dberror.log:#21 /workspace/src/vendor/phpunit/phpunit/src/Framework/TestSuite.php(626): PHPUnit\Framework\TestSuite->run()
17:32:05 mw-dberror.log:#22 /workspace/src/vendor/phpunit/phpunit/src/TextUI/TestRunner.php(659): PHPUnit\Framework\TestSuite->run()
17:32:05 mw-dberror.log:#23 /workspace/src/vendor/phpunit/phpunit/src/TextUI/Command.php(235): PHPUnit\TextUI\TestRunner->doRun()
17:32:05 mw-dberror.log:#24 /workspace/src/tests/phpunit/phpunit.php(140): PHPUnit\TextUI\Command->run()
17:32:05 mw-dberror.log:#25 /workspace/src/tests/phpunit/phpunit.php(201): PHPUnitMaintClass->execute()
17:32:05 mw-dberror.log:#26 {main}

Event Timeline

Change 773588 had a related patch set uploaded (by Zabe; author: Zabe):

[mediawiki/core@master] Revert "phpunit: Set $wgSQLMode from DevelopmentSettings instead of MediaWikiIntegrationTestCase"

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

Lucas_Werkmeister_WMDE renamed this task from Wikibase CI failing with IndexPager::buildQueryInfo error: 'wikidb.unittest_globaluser.gu_id' isn't in GROUP BY to CI failing with IndexPager::buildQueryInfo error: 'wikidb.unittest_globaluser.gu_id' isn't in GROUP BY.Mar 24 2022, 5:03 PM
Krinkle added subscribers: aaron, Reedy, Krinkle.

Thanks @Reedy.

\cc @aaron Looks like there's some things that weren't under strict yet that now were after our change. Looks like the failing tests may have in common that they aren't in group Database. I don't know if that's indeed cause, but if so presumably means we have a tail of strict mode violations that are covered by tests but 1) not in the wmf-extension shared CI gate and thus missed during the code patch and 2) are not group @Database and thus don't need a mock DB but do make some basic read queries that violate strict mode.

Change 773588 merged by jenkins-bot:

[mediawiki/core@master] Revert "phpunit: Set $wgSQLMode from DevelopmentSettings instead of MediaWikiIntegrationTestCase"

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

At least for Wikibase, gate-and-submit is working again following this revert. Thanks!