In https://gerrit.wikimedia.org/r/#/c/286797/, I had:
// Since we reset the $wgContLang global, reset the TitleParser service $services = MediaWikiServices::getInstance(); if ( is_callable( [ $services, 'getTitleParser' ] ) ) { $this->setService( 'TitleParser', new MediaWikiTitleCodec( $langObj, new GenderCache(), $services->getMainConfig()->get( 'LocalInterwikis' ) ) ); }
This caused errors like
16:50:24 1) EchoDiscussionParserTest::testGenerateEventsForRevision with data set #0 (637638133, 637637213, 'Cwobeel', 'en', array('[[User:{{{1}}}|{{<includeonly...clude>'), 'UTPage', array(array('mention', 'Cwobeel'))) 16:50:24 DBQueryError: A database error has occurred. Did you forget to run maintenance/update.php after upgrading? See: https://www.mediawiki.org/wiki/Manual:Upgrading#Run_the_update_script 16:50:24 Query: SELECT page_id,page_namespace,page_title,page_restrictions,page_is_redirect,page_is_new,page_random,page_touched,page_links_updated,page_latest,page_len,page_content_model FROM `unittest_page` WHERE page_namespace = '10' AND page_title = 'U' LIMIT 1 16:50:24 Function: WikiPage::pageData 16:50:24 Error: 1146 Table 'jenkins_u0_mw.unittest_page' doesn't exist (127.0.0.1:3306) 16:50:24 16:50:24 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/db/Database.php:934 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/db/Database.php:901 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/db/Database.php:1234 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/db/Database.php:1293 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/page/WikiPage.php:306 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/page/WikiPage.php:325 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/page/WikiPage.php:361 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/includes/page/WikiPage.php:1606 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/extensions/Echo/tests/phpunit/DiscussionParserTest.php:341 16:50:24 /mnt/jenkins-workspace/workspace/mediawiki-extensions-hhvm/src/tests/phpunit/MediaWikiTestCase.php:351
(more in https://integration.wikimedia.org/ci/job/mediawiki-extensions-hhvm/61857/consoleFull)
Using:
// Since we reset the $wgContLang global, reset the TitleParser service $services = MediaWikiServices::getInstance(); if ( is_callable( [ $services, 'getTitleParser' ] ) ) { // TODO: All of this should use $this->setService() $services->resetServiceForTesting( 'TitleParser' ); $services->redefineService( 'TitleParser', function () use ( $langObj ) { global $wgLocalInterwikis; return new MediaWikiTitleCodec( $langObj, new GenderCache(), $wgLocalInterwikis ); } ); // Cleanup $lock = new ScopedCallback( function() use ( $services ) { $services->resetServiceForTesting( 'TitleParser' ); } ); }
worked around this for now.
Probably MediaWikiTestCase::overrideMwServices() is causing issues here?