Page MenuHomePhabricator

MediaWiki\Extension\WikiLambda\ZErrorException: Language code not found
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
labels.normalized_message
[{reqId}] {exception_url}   MediaWiki\Extension\WikiLambda\ZErrorException: Language code not found
error.stack_trace
from /srv/mediawiki/php-1.42.0-wmf.18/extensions/WikiLambda/includes/Registry/ZLangRegistry.php(178)
#0 /srv/mediawiki/php-1.42.0-wmf.18/extensions/WikiLambda/includes/Registry/ZLangRegistry.php(74): MediaWiki\Extension\WikiLambda\Registry\ZLangRegistry->fetchLanguageZidFromCode(string)
#1 /srv/mediawiki/php-1.42.0-wmf.18/extensions/WikiLambda/includes/ZObjectStore.php(734): MediaWiki\Extension\WikiLambda\Registry\ZLangRegistry->getLanguageZidFromCode(string)
#2 /srv/mediawiki/php-1.42.0-wmf.18/extensions/WikiLambda/includes/HookHandler/PageRenderingHandler.php(206): MediaWiki\Extension\WikiLambda\ZObjectStore->fetchZObjectLabel(string, string, boolean)
#3 /srv/mediawiki/php-1.42.0-wmf.18/includes/HookContainer/HookContainer.php(159): MediaWiki\Extension\WikiLambda\HookHandler\PageRenderingHandler->onHtmlPageLinkRendererEnd(MediaWiki\Linker\LinkRenderer, MediaWiki\Title\Title, boolean, string, array, NULL)
#4 /srv/mediawiki/php-1.42.0-wmf.18/includes/HookContainer/HookRunner.php(2055): MediaWiki\HookContainer\HookContainer->run(string, array)
#5 /srv/mediawiki/php-1.42.0-wmf.18/includes/linker/LinkRenderer.php(428): MediaWiki\HookContainer\HookRunner->onHtmlPageLinkRendererEnd(MediaWiki\Linker\LinkRenderer, MediaWiki\Title\Title, boolean, string, array, NULL)
#6 /srv/mediawiki/php-1.42.0-wmf.18/includes/linker/LinkRenderer.php(248): MediaWiki\Linker\LinkRenderer->buildAElement(MediaWiki\Title\Title, string, array, boolean)
#7 /srv/mediawiki/php-1.42.0-wmf.18/includes/linker/LinkRenderer.php(294): MediaWiki\Linker\LinkRenderer->makePreloadedLink(MediaWiki\Title\Title, string, string, array, array)
#8 /srv/mediawiki/php-1.42.0-wmf.18/includes/linker/LinkRenderer.php(184): MediaWiki\Linker\LinkRenderer->makeKnownLink(MediaWiki\Title\Title, NULL, array, array)
#9 /srv/mediawiki/php-1.42.0-wmf.18/includes/changes/ChangesList.php(603): MediaWiki\Linker\LinkRenderer->makeLink(MediaWiki\Title\Title, NULL, array, array)
#10 /srv/mediawiki/php-1.42.0-wmf.18/includes/changes/OldChangesList.php(119): ChangesList->getArticleLink(RecentChange, boolean, boolean)
#11 /srv/mediawiki/php-1.42.0-wmf.18/includes/changes/OldChangesList.php(52): OldChangesList->formatChangeLine(RecentChange, array, boolean)
#12 /srv/mediawiki/php-1.42.0-wmf.18/includes/specials/SpecialRecentChanges.php(608): OldChangesList->recentChangesLine(RecentChange, boolean, integer)
#13 /srv/mediawiki/php-1.42.0-wmf.18/includes/specialpage/ChangesListSpecialPage.php(1632): MediaWiki\Specials\SpecialRecentChanges->outputChangesList(Wikimedia\Rdbms\MysqliResultWrapper, MediaWiki\Html\FormOptions)
#14 /srv/mediawiki/php-1.42.0-wmf.18/includes/specialpage/ChangesListSpecialPage.php(717): MediaWiki\SpecialPage\ChangesListSpecialPage->webOutput(Wikimedia\Rdbms\MysqliResultWrapper, MediaWiki\Html\FormOptions)
#15 /srv/mediawiki/php-1.42.0-wmf.18/includes/specials/SpecialRecentChanges.php(227): MediaWiki\SpecialPage\ChangesListSpecialPage->execute(NULL)
#16 /srv/mediawiki/php-1.42.0-wmf.18/includes/specialpage/SpecialPage.php(720): MediaWiki\Specials\SpecialRecentChanges->execute(NULL)
#17 /srv/mediawiki/php-1.42.0-wmf.18/includes/specialpage/SpecialPageFactory.php(1653): MediaWiki\SpecialPage\SpecialPage->run(NULL)
#18 /srv/mediawiki/php-1.42.0-wmf.18/includes/actions/ActionEntryPoint.php(504): MediaWiki\SpecialPage\SpecialPageFactory->executePath(string, MediaWiki\Context\RequestContext)
#19 /srv/mediawiki/php-1.42.0-wmf.18/includes/actions/ActionEntryPoint.php(145): MediaWiki\Actions\ActionEntryPoint->performRequest()
#20 /srv/mediawiki/php-1.42.0-wmf.18/includes/MediaWikiEntryPoint.php(199): MediaWiki\Actions\ActionEntryPoint->execute()
#21 /srv/mediawiki/php-1.42.0-wmf.18/index.php(58): MediaWiki\MediaWikiEntryPoint->run()
#22 /srv/mediawiki/w/index.php(3): require(string)
#23 {main}
Impact
Notes

A couple of these seen in 1.42.0-wmf.18 (T354436). Wasn't able to reproduce just loading the URL.

Event Timeline

Mcastro triaged this task as High priority.Feb 15 2024, 5:32 PM
Mcastro moved this task from To triage to Backlog on the Abstract Wikipedia team board.

Change 1003814 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] onHtmlPageLinkRendererEnd: Don't explode if the language isn't known

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

Jdforrester-WMF changed the task status from Open to In Progress.Feb 15 2024, 6:26 PM
Jdforrester-WMF claimed this task.
Jdforrester-WMF moved this task from Backlog to In Progress on the Abstract Wikipedia team board.

Change 1003814 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] onHtmlPageLinkRendererEnd: Don't explode if the language isn't known

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

thcipriani subscribed.

Seeing this still trickle in, the past few days there has been a slight rise in this message, coming at the rate of about 15/day.

Here's a fresh stack trace:

Error
normalized_message
[{reqId}] {exception_url}   MediaWiki\Extension\WikiLambda\ZErrorException: Language code not found
exception.trace
from /srv/mediawiki/php-1.43.0-wmf.3/extensions/WikiLambda/includes/Registry/ZLangRegistry.php(178)
#0 /srv/mediawiki/php-1.43.0-wmf.3/extensions/WikiLambda/includes/Registry/ZLangRegistry.php(74): MediaWiki\Extension\WikiLambda\Registry\ZLangRegistry->fetchLanguageZidFromCode(string)
#1 /srv/mediawiki/php-1.43.0-wmf.3/extensions/WikiLambda/includes/ZObjectStore.php(734): MediaWiki\Extension\WikiLambda\Registry\ZLangRegistry->getLanguageZidFromCode(string)
#2 /srv/mediawiki/php-1.43.0-wmf.3/extensions/WikiLambda/includes/HookHandler/PageRenderingHandler.php(218): MediaWiki\Extension\WikiLambda\ZObjectStore->fetchZObjectLabel(string, string, boolean)
#3 /srv/mediawiki/php-1.43.0-wmf.3/includes/HookContainer/HookContainer.php(159): MediaWiki\Extension\WikiLambda\HookHandler\PageRenderingHandler->onHtmlPageLinkRendererEnd(MediaWiki\Linker\LinkRenderer, MediaWiki\Title\Title, boolean, HtmlArmor, array, NULL)
#4 /srv/mediawiki/php-1.43.0-wmf.3/includes/HookContainer/HookRunner.php(2058): MediaWiki\HookContainer\HookContainer->run(string, array)
#5 /srv/mediawiki/php-1.43.0-wmf.3/includes/linker/LinkRenderer.php(428): MediaWiki\HookContainer\HookRunner->onHtmlPageLinkRendererEnd(MediaWiki\Linker\LinkRenderer, MediaWiki\Title\Title, boolean, HtmlArmor, array, NULL)
#6 /srv/mediawiki/php-1.43.0-wmf.3/includes/linker/LinkRenderer.php(248): MediaWiki\Linker\LinkRenderer->buildAElement(MediaWiki\Title\Title, HtmlArmor, array, boolean)
#7 /srv/mediawiki/php-1.43.0-wmf.3/includes/parser/LinkHolderArray.php(263): MediaWiki\Linker\LinkRenderer->makePreloadedLink(MediaWiki\Title\Title, HtmlArmor, string, array, array)
#8 /srv/mediawiki/php-1.43.0-wmf.3/includes/parser/LinkHolderArray.php(152): LinkHolderArray->replaceInternal(string)
#9 /srv/mediawiki/php-1.43.0-wmf.3/includes/parser/Parser.php(5083): LinkHolderArray->replace(string)
#10 /srv/mediawiki/php-1.43.0-wmf.3/includes/parser/Parser.php(1719): MediaWiki\Parser\Parser->replaceLinkHoldersPrivate(string)
#11 /srv/mediawiki/php-1.43.0-wmf.3/includes/parser/Parser.php(728): MediaWiki\Parser\Parser->internalParseHalfParsed(string, boolean, boolean)
#12 /srv/mediawiki/php-1.43.0-wmf.3/includes/content/WikitextContentHandler.php(376): MediaWiki\Parser\Parser->parse(string, MediaWiki\Title\Title, ParserOptions, boolean, boolean, integer)
#13 /srv/mediawiki/php-1.43.0-wmf.3/includes/content/ContentHandler.php(1665): WikitextContentHandler->fillParserOutput(WikitextContent, MediaWiki\Content\Renderer\ContentParseParams, MediaWiki\Parser\ParserOutput)
#14 /srv/mediawiki/php-1.43.0-wmf.3/includes/content/Renderer/ContentRenderer.php(67): ContentHandler->getParserOutput(WikitextContent, MediaWiki\Content\Renderer\ContentParseParams)
#15 /srv/mediawiki/php-1.43.0-wmf.3/includes/Revision/RenderedRevision.php(260): MediaWiki\Content\Renderer\ContentRenderer->getParserOutput(WikitextContent, MediaWiki\Title\Title, MediaWiki\Revision\RevisionStoreCacheRecord, ParserOptions, boolean)
#16 /srv/mediawiki/php-1.43.0-wmf.3/includes/Revision/RenderedRevision.php(232): MediaWiki\Revision\RenderedRevision->getSlotParserOutputUncached(WikitextContent, boolean)
#17 /srv/mediawiki/php-1.43.0-wmf.3/includes/Revision/RevisionRenderer.php(226): MediaWiki\Revision\RenderedRevision->getSlotParserOutput(string, array)
#18 /srv/mediawiki/php-1.43.0-wmf.3/includes/Revision/RevisionRenderer.php(164): MediaWiki\Revision\RevisionRenderer->combineSlotOutput(MediaWiki\Revision\RenderedRevision, ParserOptions, array)
#19 [internal function]: MediaWiki\Revision\RevisionRenderer->MediaWiki\Revision\{closure}(MediaWiki\Revision\RenderedRevision, array)
#20 /srv/mediawiki/php-1.43.0-wmf.3/includes/Revision/RenderedRevision.php(199): call_user_func(Closure, MediaWiki\Revision\RenderedRevision, array)
#21 /srv/mediawiki/php-1.43.0-wmf.3/includes/poolcounter/PoolWorkArticleView.php(91): MediaWiki\Revision\RenderedRevision->getRevisionParserOutput()
#22 /srv/mediawiki/php-1.43.0-wmf.3/includes/poolcounter/PoolWorkArticleViewCurrent.php(107): MediaWiki\PoolCounter\PoolWorkArticleView->renderRevision()
#23 /srv/mediawiki/php-1.43.0-wmf.3/includes/poolcounter/PoolCounterWork.php(171): MediaWiki\PoolCounter\PoolWorkArticleViewCurrent->doWork()
#24 /srv/mediawiki/php-1.43.0-wmf.3/includes/page/ParserOutputAccess.php(355): MediaWiki\PoolCounter\PoolCounterWork->execute()
#25 /srv/mediawiki/php-1.43.0-wmf.3/includes/page/Article.php(761): MediaWiki\Page\ParserOutputAccess->getParserOutput(WikiPage, ParserOptions, MediaWiki\Revision\RevisionStoreCacheRecord, integer)
#26 /srv/mediawiki/php-1.43.0-wmf.3/includes/page/Article.php(563): Article->generateContentOutput(MediaWiki\User\User, ParserOptions, integer, MediaWiki\Output\OutputPage, array)
#27 /srv/mediawiki/php-1.43.0-wmf.3/includes/actions/ViewAction.php(78): Article->view()
#28 /srv/mediawiki/php-1.43.0-wmf.3/includes/actions/ActionEntryPoint.php(731): ViewAction->show()
#29 /srv/mediawiki/php-1.43.0-wmf.3/includes/actions/ActionEntryPoint.php(508): MediaWiki\Actions\ActionEntryPoint->performAction(Article, MediaWiki\Title\Title)
#30 /srv/mediawiki/php-1.43.0-wmf.3/includes/actions/ActionEntryPoint.php(145): MediaWiki\Actions\ActionEntryPoint->performRequest()
#31 /srv/mediawiki/php-1.43.0-wmf.3/includes/MediaWikiEntryPoint.php(199): MediaWiki\Actions\ActionEntryPoint->execute()
#32 /srv/mediawiki/php-1.43.0-wmf.3/index.php(58): MediaWiki\MediaWikiEntryPoint->run()
#33 /srv/mediawiki/w/index.php(3): require(string)
#34 {main}

Change #1028845 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] ZObjectStore: Log if ZLangReg->getLanguageZidFromCode() throws

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

Change #1028845 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] ZObjectStore: Log if ZLangReg->getLanguageZidFromCode() throws

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

Change #1042306 had a related patch set uploaded (by Jforrester; author: Jforrester):

[mediawiki/extensions/WikiLambda@master] ZObjectStore: Fix deletion of language objects

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

Change #1042306 merged by jenkins-bot:

[mediawiki/extensions/WikiLambda@master] ZObjectStore: Fix deletion of language objects

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

Think this is now finally fixed.