Page MenuHomePhabricator

LogicException: Unable to find Service callback for Entity Type sense for Source wikidata
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error
normalized_message
[{reqId}] {exception_url}   LogicException: Unable to find Service callback for Entity Type sense for Source wikidata
exception.trace
from /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/lib/includes/ServiceBySourceAndTypeDispatcher.php(54)
#0 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/lib/includes/ServiceBySourceAndTypeDispatcher.php(58): Wikibase\Lib\ServiceBySourceAndTypeDispatcher->createService(string, string, array)
#1 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/data-access/src/SourceAndTypeDispatchingPrefetchingTermLookup.php(65): Wikibase\Lib\ServiceBySourceAndTypeDispatcher->getServiceForSourceAndType(string, string, array)
#2 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/data-access/src/SourceAndTypeDispatchingPrefetchingTermLookup.php(40): Wikibase\DataAccess\SourceAndTypeDispatchingPrefetchingTermLookup->getLookupForEntitySourceAndType(Wikibase\DataAccess\EntitySource, string)
#3 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/data-access/src/SourceAndTypeDispatchingPrefetchingTermLookup.php(69): Wikibase\DataAccess\SourceAndTypeDispatchingPrefetchingTermLookup->prefetchTerms(array, array, array)
#4 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/lib/includes/Store/EntityTermLookupBase.php(41): Wikibase\DataAccess\SourceAndTypeDispatchingPrefetchingTermLookup->getTermsOfType(Wikibase\Lexeme\Domain\Model\SenseId, string, array)
#5 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/lib/includes/Store/LanguageFallbackLabelDescriptionLookup.php(51): Wikibase\Lib\Store\EntityTermLookupBase->getLabels(Wikibase\Lexeme\Domain\Model\SenseId, array)
#6 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/lib/includes/Store/CachingFallbackLabelDescriptionLookup.php(116): Wikibase\Lib\Store\LanguageFallbackLabelDescriptionLookup->getLabel(Wikibase\Lexeme\Domain\Model\SenseId)
#7 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/lib/includes/Store/CachingFallbackLabelDescriptionLookup.php(100): Wikibase\Lib\Store\CachingFallbackLabelDescriptionLookup->getTerm(Wikibase\Lexeme\Domain\Model\SenseId, string, string)
#8 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/client/includes/Usage/UsageTrackingLanguageFallbackLabelDescriptionLookup.php(71): Wikibase\Lib\Store\CachingFallbackLabelDescriptionLookup->getLabel(Wikibase\Lexeme\Domain\Model\SenseId)
#9 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/client/includes/DataAccess/Scribunto/WikibaseLanguageDependentLuaBindings.php(60): Wikibase\Client\Usage\UsageTrackingLanguageFallbackLabelDescriptionLookup->getLabel(Wikibase\Lexeme\Domain\Model\SenseId)
#10 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Wikibase/client/includes/DataAccess/Scribunto/Scribunto_LuaWikibaseLibrary.php(612): Wikibase\Client\DataAccess\Scribunto\WikibaseLanguageDependentLuaBindings->getLabel(string)
#11 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Scribunto/includes/engines/LuaSandbox/LuaSandboxCallback.php(26): Wikibase\Client\DataAccess\Scribunto\Scribunto_LuaWikibaseLibrary->getLabel(string)
#12 [internal function]: Scribunto_LuaSandboxCallback->__call(string, array)
#13 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Scribunto/includes/engines/LuaSandbox/LuaSandboxInterpreter.php(113): LuaSandboxFunction->call(LuaSandboxFunction)
#14 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Scribunto/includes/engines/LuaCommon/LuaEngine.php(297): Scribunto_LuaSandboxInterpreter->callFunction(LuaSandboxFunction, LuaSandboxFunction)
#15 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Scribunto/includes/engines/LuaCommon/LuaModule.php(68): Scribunto_LuaEngine->executeFunctionChunk(LuaSandboxFunction, PPTemplateFrame_Hash)
#16 /srv/mediawiki/php-1.37.0-wmf.15/extensions/Scribunto/includes/common/Hooks.php(128): Scribunto_LuaModule->invoke(string, PPTemplateFrame_Hash)
#17 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(3393): ScribuntoHooks::invokeHook(Parser, PPTemplateFrame_Hash, array)
#18 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(3078): Parser->callParserFunction(PPTemplateFrame_Hash, string, array)
#19 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/PPFrame_Hash.php(263): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#20 /srv/mediawiki/php-1.37.0-wmf.15/extensions/ParserFunctions/includes/ParserFunctions.php(121): PPFrame_Hash->expand(PPNode_Hash_Tree)
#21 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(3393): MediaWiki\Extensions\ParserFunctions\ParserFunctions::if(Parser, PPTemplateFrame_Hash, array)
#22 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(3078): Parser->callParserFunction(PPTemplateFrame_Hash, string, array)
#23 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/PPFrame_Hash.php(263): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#24 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(3267): PPFrame_Hash->expand(PPNode_Hash_Tree)
#25 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/PPFrame_Hash.php(263): Parser->braceSubstitution(array, PPTemplateFrame_Hash)
#26 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(3267): PPFrame_Hash->expand(PPNode_Hash_Tree)
#27 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/PPFrame_Hash.php(263): Parser->braceSubstitution(array, PPFrame_Hash)
#28 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(2916): PPFrame_Hash->expand(PPNode_Hash_Tree, integer)
#29 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(1584): Parser->replaceVariables(string)
#30 /srv/mediawiki/php-1.37.0-wmf.15/includes/parser/Parser.php(645): Parser->internalParse(string)
#31 /srv/mediawiki/php-1.37.0-wmf.15/includes/content/WikitextContent.php(375): Parser->parse(string, Title, ParserOptions, boolean, boolean, NULL)
#32 /srv/mediawiki/php-1.37.0-wmf.15/includes/content/AbstractContent.php(591): WikitextContent->fillParserOutput(Title, NULL, ParserOptions, boolean, ParserOutput)
#33 /srv/mediawiki/php-1.37.0-wmf.15/includes/Revision/RenderedRevision.php(266): AbstractContent->getParserOutput(Title, NULL, ParserOptions, boolean)
#34 /srv/mediawiki/php-1.37.0-wmf.15/includes/Revision/RenderedRevision.php(235): MediaWiki\Revision\RenderedRevision->getSlotParserOutputUncached(WikitextContent, boolean)
#35 /srv/mediawiki/php-1.37.0-wmf.15/includes/Revision/RevisionRenderer.php(217): MediaWiki\Revision\RenderedRevision->getSlotParserOutput(string, array)
#36 /srv/mediawiki/php-1.37.0-wmf.15/includes/Revision/RevisionRenderer.php(154): MediaWiki\Revision\RevisionRenderer->combineSlotOutput(MediaWiki\Revision\RenderedRevision, array)
#37 [internal function]: MediaWiki\Revision\RevisionRenderer->MediaWiki\Revision\{closure}(MediaWiki\Revision\RenderedRevision, array)
#38 /srv/mediawiki/php-1.37.0-wmf.15/includes/Revision/RenderedRevision.php(197): call_user_func(Closure, MediaWiki\Revision\RenderedRevision, array)
#39 /srv/mediawiki/php-1.37.0-wmf.15/includes/Storage/DerivedPageDataUpdater.php(1343): MediaWiki\Revision\RenderedRevision->getRevisionParserOutput()
#40 [internal function]: MediaWiki\Storage\DerivedPageDataUpdater->getCanonicalParserOutput()
#41 /srv/mediawiki/php-1.37.0-wmf.15/includes/edit/PreparedEdit.php(104): call_user_func(array)
#42 /srv/mediawiki/php-1.37.0-wmf.15/includes/edit/PreparedEdit.php(119): MediaWiki\Edit\PreparedEdit->getOutput()
#43 /srv/mediawiki/php-1.37.0-wmf.15/includes/Storage/DerivedPageDataUpdater.php(1321): MediaWiki\Edit\PreparedEdit->__get(string)
#44 /srv/mediawiki/php-1.37.0-wmf.15/includes/page/WikiPage.php(2132): MediaWiki\Storage\DerivedPageDataUpdater->getPreparedEdit()
#45 /srv/mediawiki/php-1.37.0-wmf.15/extensions/SpamBlacklist/includes/SpamBlacklistHooks.php(44): WikiPage->prepareContentForEdit(WikitextContent, NULL, User)
#46 /srv/mediawiki/php-1.37.0-wmf.15/includes/HookContainer/HookContainer.php(160): SpamBlacklistHooks->onEditFilterMergedContent(DerivativeContext, WikitextContent, Status, string, User, boolean)
#47 /srv/mediawiki/php-1.37.0-wmf.15/includes/HookContainer/HookRunner.php(1495): MediaWiki\HookContainer\HookContainer->run(string, array)
#48 /srv/mediawiki/php-1.37.0-wmf.15/includes/editpage/Constraint/EditFilterMergedContentHookConstraint.php(90): MediaWiki\HookContainer\HookRunner->onEditFilterMergedContent(DerivativeContext, WikitextContent, Status, string, User, boolean)
#49 /srv/mediawiki/php-1.37.0-wmf.15/includes/editpage/Constraint/EditConstraintRunner.php(88): MediaWiki\EditPage\Constraint\EditFilterMergedContentHookConstraint->checkConstraint()
#50 /srv/mediawiki/php-1.37.0-wmf.15/includes/EditPage.php(2257): MediaWiki\EditPage\Constraint\EditConstraintRunner->checkConstraints()
#51 /srv/mediawiki/php-1.37.0-wmf.15/includes/EditPage.php(1676): EditPage->internalAttemptSave(NULL, boolean)
#52 /srv/mediawiki/php-1.37.0-wmf.15/includes/api/ApiEditPage.php(501): EditPage->attemptSave(NULL)
#53 /srv/mediawiki/php-1.37.0-wmf.15/includes/api/ApiMain.php(1842): ApiEditPage->execute()
#54 /srv/mediawiki/php-1.37.0-wmf.15/includes/api/ApiMain.php(821): ApiMain->executeAction()
#55 /srv/mediawiki/php-1.37.0-wmf.15/includes/api/ApiMain.php(792): ApiMain->executeActionWithErrorHandling()
#56 /srv/mediawiki/php-1.37.0-wmf.15/api.php(90): ApiMain->execute()
#57 /srv/mediawiki/php-1.37.0-wmf.15/api.php(45): wfApiMain()
#58 /srv/mediawiki/w/api.php(3): require(string)
#59 {main}
Impact

Only one occurrence.

Notes

Event Timeline

Seems to be reproducible in a Lua debug console:

=mw.wikibase.getLabel('L1-S1')
[a51290de-8840-479d-8c1a-dbb9f96becc2] Caught exception of type LogicException

For comparison, on enwiki (wmf.14) that call just returns nil.

=mw.wikibase.getLabel('L1-S1')
nil

Change 705895 had a related patch set uploaded (by Jakob; author: Jakob):

[mediawiki/extensions/WikibaseLexeme@master] Define PREFETCHING_TERM_LOOKUP_CALLBACK for form and sense

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

Change 705895 merged by jenkins-bot:

[mediawiki/extensions/WikibaseLexeme@master] Define PREFETCHING_TERM_LOOKUP for all types in client and repo

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

Change 705912 had a related patch set uploaded (by Lucas Werkmeister (WMDE); author: Jakob):

[mediawiki/extensions/WikibaseLexeme@wmf/1.37.0-wmf.15] Define PREFETCHING_TERM_LOOKUP for all types in client and repo

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

Change 705912 merged by jenkins-bot:

[mediawiki/extensions/WikibaseLexeme@wmf/1.37.0-wmf.15] Define PREFETCHING_TERM_LOOKUP for all types in client and repo

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

Mentioned in SAL (#wikimedia-operations) [2021-07-21T16:32:03Z] <lucaswerkmeister-wmde@deploy1002> Synchronized php-1.37.0-wmf.15/extensions/WikibaseLexeme/WikibaseLexeme.entitytypes.repo.php: Backport: [[gerrit:705912|Define PREFETCHING_TERM_LOOKUP for all types in client and repo (T287085)]] (2/2) – I think this might be the fastest way to fix the errors (duration: 01m 05s)

So my backport for this went pretty poorly (writeup at T287100#7228015), but it should be fixed now, at least.

Lucas_Werkmeister_WMDE assigned this task to Jakob_WMDE.

Hasn’t recurred since 16:30 UTC yesterday, I think we can consider this resolved.

Screenshot 2021-07-22 at 10-22-18 mediawiki - Elastic.png (220×678 px, 11 KB)