Page MenuHomePhabricator

MWException from line 545 of SiteConfiguration.php: No such wiki 's'.
Closed, ResolvedPublic

Description

Error Message

MWException from line 545 of /srv/mediawiki/php-1.31.0-wmf.2/includes/SiteConfiguration.php: No such wiki 's'.

Stack Trace

#0 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/SearchConfig.php(104): SiteConfiguration->getConfig(string, array)
#1 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/SearchConfig.php(71): CirrusSearch\SearchConfig->getConfigVars(string, string)
#2 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/BaseInterwikiResolver.php(283): CirrusSearch\SearchConfig->__construct(string)
#3 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/BaseInterwikiResolver.php(183): CirrusSearch\BaseInterwikiResolver->siteConfSearchConfig(string, array)
#4 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/BaseInterwikiResolver.php(99): CirrusSearch\BaseInterwikiResolver->loadConfigFromAPI(array, array, array)
#5 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/CirrusSearch.php(232): CirrusSearch\BaseInterwikiResolver->getSameProjectConfigByLang(string)
#6 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/CirrusSearch.php(292): CirrusSearch->detectSecondaryLanguage(string)
#7 /srv/mediawiki/php-1.31.0-wmf.2/extensions/CirrusSearch/includes/CirrusSearch.php(176): CirrusSearch->searchTextSecondTry(string, Status)
#8 /srv/mediawiki/php-1.31.0-wmf.2/includes/specials/SpecialSearch.php(319): CirrusSearch->searchText(string)
#9 /srv/mediawiki/php-1.31.0-wmf.2/includes/specials/SpecialSearch.php(185): SpecialSearch->showResults(string)
#10 /srv/mediawiki/php-1.31.0-wmf.2/includes/specialpage/SpecialPage.php(522): SpecialSearch->execute(NULL)
#11 /srv/mediawiki/php-1.31.0-wmf.2/includes/specialpage/SpecialPageFactory.php(578): SpecialPage->run(NULL)
#12 /srv/mediawiki/php-1.31.0-wmf.2/includes/MediaWiki.php(287): SpecialPageFactory::executePath(Title, RequestContext)
#13 /srv/mediawiki/php-1.31.0-wmf.2/includes/MediaWiki.php(851): MediaWiki->performRequest()
#14 /srv/mediawiki/php-1.31.0-wmf.2/includes/MediaWiki.php(523): MediaWiki->main()
#15 /srv/mediawiki/php-1.31.0-wmf.2/index.php(43): MediaWiki->run()
#16 /srv/mediawiki/w/index.php(3): include(string)
#17 {main}

Notes

This is apparently related to cross-language search

Event Timeline

mmodell created this task.Oct 5 2017, 8:32 PM
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptOct 5 2017, 8:32 PM

Mentioned in SAL (#wikimedia-operations) [2017-10-05T20:47:05Z] <twentyafterfour> 1.31.0-wmf.2 is now blocked by T177535

Change 382595 had a related patch set uploaded (by EBernhardson; owner: EBernhardson):
[mediawiki/extensions/CirrusSearch@master] Fix errors from secondary language detection

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

Patch is up and should resolve the problem. In the longer run we need better testing of this code path, but it's hard as you need a bunch of cross-wiki stuff setup in the test environment. Perhaps we can at least get it going in the browser test suite which already has multiple languages for testing analysis chains.

Change 382605 had a related patch set uploaded (by 20after4; owner: EBernhardson):
[mediawiki/extensions/CirrusSearch@wmf/1.31.0-wmf.2] Fix errors from secondary language detection

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

Change 382595 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@master] Fix errors from secondary language detection

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

Change 382605 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@wmf/1.31.0-wmf.2] Fix errors from secondary language detection

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

Mentioned in SAL (#wikimedia-operations) [2017-10-05T21:32:04Z] <twentyafterfour@tin> Synchronized php-1.31.0-wmf.2/extensions/CirrusSearch: sync CirrusSearch to deploy https://gerrit.wikimedia.org/r/#/c/382605/ refs T177535 (duration: 01m 06s)

mmodell closed this task as Resolved.Oct 5 2017, 10:06 PM

This was cherry-picked and deployed with wmf.2

Change 382616 had a related patch set uploaded (by EBernhardson; owner: EBernhardson):
[mediawiki/extensions/CirrusSearch@master] BaseInterwikiResolver::loadConfigFromApi already returns array

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

Change 382618 had a related patch set uploaded (by 20after4; owner: EBernhardson):
[mediawiki/extensions/CirrusSearch@wmf/1.31.0-wmf.2] BaseInterwikiResolver::loadConfigFromApi already returns array

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

Change 382618 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@wmf/1.31.0-wmf.2] BaseInterwikiResolver::loadConfigFromApi already returns array

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

Change 382624 had a related patch set uploaded (by EBernhardson; owner: EBernhardson):
[mediawiki/extensions/CirrusSearch@master] InterwikiLookup::fetch is documented to return Interwiki|null|bool

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

Change 382625 had a related patch set uploaded (by 20after4; owner: EBernhardson):
[mediawiki/extensions/CirrusSearch@wmf/1.31.0-wmf.2] InterwikiLookup::fetch is documented to return Interwiki|null|bool

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

Change 382625 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@wmf/1.31.0-wmf.2] InterwikiLookup::fetch is documented to return Interwiki|null|bool

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

@dcausse

One lingering problem found here that is papered over by appropriately checking InterwikiLookup::fetch results, svwiki has renamed wikisource interwiki prefix from 's' to 'src'. We get the prefix from $wgSiteMatrixSites which is the same for all wikis. The end result is basically svwiki doesn't get (never got) sister search results for wikisource. Not the end of the world but would be nice to be able to source the data correctly. Unfortunately the only place i can find this variation, so far, is in InterwikiLookup itself. And the way it's data is layed out it's not possible to efficiently extract this from its data.

We could adjust mediawiki-config to change $wgSiteMatrixSites, but I don't understand it well enough to say it is 100% wrong to have the 's' prefix there.

dcausse added a comment.EditedOct 6 2017, 8:14 AM

@EBernhardson thanks for all your fixes.
I've never heard of this src prefix for svwikisource. I can have a look again at InterwikiLookup but the problem is that it uses completely different data than SiteMatrix and as you said is optimized for different purposes...

Change 382616 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@master] BaseInterwikiResolver::loadConfigFromApi already returns array

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

Change 382624 merged by jenkins-bot:
[mediawiki/extensions/CirrusSearch@master] InterwikiLookup::fetch is documented to return Interwiki|null|bool

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