Page MenuHomePhabricator

Internal error on beta Commons Special:RecentChanges: Cache key contains characters that are not allowed
Closed, ResolvedPublicPRODUCTION ERROR

Description

Error message
[Xj0DYqwQBHcAAFgBXIUAAAAO] /wiki/Special:RecentChanges   class@anonymous/srv/mediawiki/php-master/extensions/Wikibase/lib/includes/SimpleCacheWithBagOStuff.php0x7f2867cdc02f from line 271 of /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/SimpleCacheWithBagOStuff.php: Cache key contains characters that are not allowed: `d:P231054_1051159_en_label`
Impact

Users are unable to access Special:RecentChanges

Versions

MW 1.35.0-alpha (f21d041)
WikibaseClient – (cffb9fb)
WikibaseLexeme – (9d3a680)
WikibaseLib – (cffb9fb)
WikibaseMediaInfo 0.1.0 (e33361c)
WikibaseQualityConstraints 1.0.0 (86f96c2)
WikibaseRepository – (cffb9fb)
WikibaseView – (cffb9fb)

Details

Request ID
Xj0DYqwQBHcAAFgBXIUAAAAO
Request URL
https://commons.wikimedia.beta.wmflabs.org/wiki/Special:RecentChanges
Stack Trace
#0 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/SimpleCacheWithBagOStuff.php(266): Wikibase\Lib\SimpleCacheWithBagOStuff->invalidArgument(string)
#1 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/SimpleCacheWithBagOStuff.php(233): Wikibase\Lib\SimpleCacheWithBagOStuff->assertKeyIsValid(string)
#2 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/Store/UncachedTermsPrefetcher.php(76): Wikibase\Lib\SimpleCacheWithBagOStuff->has(string)
#3 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/Store/UncachedTermsPrefetcher.php(41): Wikibase\Lib\Store\UncachedTermsPrefetcher->getUncachedLanguagesForEntityTerms(Wikibase\Lib\SimpleCacheWithBagOStuff, Wikibase\DataModel\Entity\PropertyId, array, array)
#4 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/Store/CachingPrefetchingTermLookup.php(42): Wikibase\Lib\Store\UncachedTermsPrefetcher->prefetchUncached(Wikibase\Lib\SimpleCacheWithBagOStuff, array, array, array)
#5 /srv/mediawiki/php-master/extensions/Wikibase/data-access/src/ByTypeDispatchingPrefetchingTermLookup.php(52): Wikibase\Lib\Store\CachingPrefetchingTermLookup->prefetchTerms(array, array, array)
#6 /srv/mediawiki/php-master/extensions/Wikibase/data-access/src/ByTypeDispatchingPrefetchingTermLookup.php(52): Wikibase\DataAccess\ByTypeDispatchingPrefetchingTermLookup->prefetchTerms(array, array, array)
#7 /srv/mediawiki/php-master/extensions/Wikibase/data-access/src/ByTypeDispatchingPrefetchingTermLookup.php(88): Wikibase\DataAccess\ByTypeDispatchingPrefetchingTermLookup->prefetchTerms(array, array, array)
#8 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/Store/EntityTermLookupBase.php(52): Wikibase\DataAccess\ByTypeDispatchingPrefetchingTermLookup->getTermsOfType(Wikibase\DataModel\Entity\PropertyId, string, array)
#9 /srv/mediawiki/php-master/extensions/Wikibase/lib/includes/Store/LanguageFallbackLabelDescriptionLookup.php(51): Wikibase\Lib\Store\EntityTermLookupBase->getLabels(Wikibase\DataModel\Entity\PropertyId, array)
#10 /srv/mediawiki/php-master/extensions/Wikibase/repo/includes/Hooks/HtmlPageLinkRendererBeginHookHandler.php(253): Wikibase\Lib\Store\LanguageFallbackLabelDescriptionLookup->getLabel(Wikibase\DataModel\Entity\PropertyId)
#11 /srv/mediawiki/php-master/extensions/Wikibase/repo/includes/Hooks/HtmlPageLinkRendererBeginHookHandler.php(146): Wikibase\Repo\Hooks\HtmlPageLinkRendererBeginHookHandler->doHtmlPageLinkRendererBegin(MediaWiki\Linker\LinkRenderer, Title, HtmlArmor, array, RequestContext, NULL)
#12 /srv/mediawiki/php-master/includes/Hooks.php(174): Wikibase\Repo\Hooks\HtmlPageLinkRendererBeginHookHandler::onHtmlPageLinkRendererBegin(MediaWiki\Linker\LinkRenderer, TitleValue, HtmlArmor, array, array, NULL)
#13 /srv/mediawiki/php-master/includes/Hooks.php(202): Hooks::callHook(string, array, array, NULL)
#14 /srv/mediawiki/php-master/includes/linker/LinkRenderer.php(189): Hooks::run(string, array)
#15 /srv/mediawiki/php-master/includes/linker/LinkRenderer.php(260): MediaWiki\Linker\LinkRenderer->runBeginHook(TitleValue, HtmlArmor, array, array, boolean)
#16 /srv/mediawiki/php-master/includes/linker/LinkRenderer.php(307): MediaWiki\Linker\LinkRenderer->makePreloadedLink(TitleValue, HtmlArmor, string, array, array)
#17 /srv/mediawiki/php-master/includes/linker/LinkRenderer.php(158): MediaWiki\Linker\LinkRenderer->makeKnownLink(TitleValue, HtmlArmor, array, array)
#18 /srv/mediawiki/php-master/includes/Linker.php(126): MediaWiki\Linker\LinkRenderer->makeLink(TitleValue, HtmlArmor, array, array)
#19 /srv/mediawiki/php-master/includes/Linker.php(1439): Linker::link(TitleValue, string, array, array, array)
#20 /srv/mediawiki/php-master/includes/Linker.php(1386): Linker::makeCommentLink(TitleValue, string, NULL)
#21 [internal function]: Linker::{closure}(array)
#22 /srv/mediawiki/php-master/includes/Linker.php(1404): preg_replace_callback(string, Closure, string)
#23 /srv/mediawiki/php-master/includes/Linker.php(1176): Linker::formatLinksInComment(string, Title, boolean, NULL)
#24 /srv/mediawiki/php-master/includes/Linker.php(1553): Linker::formatComment(string, Title, boolean, NULL)
#25 /srv/mediawiki/php-master/includes/changes/ChangesList.php(650): Linker::commentBlock(string, Title, boolean, NULL, boolean)
#26 /srv/mediawiki/php-master/includes/changes/EnhancedChangesList.php(698): ChangesList->insertComment(RCCacheEntry)
#27 /srv/mediawiki/php-master/includes/changes/EnhancedChangesList.php(825): EnhancedChangesList->recentChangesBlockLine(RCCacheEntry)
#28 /srv/mediawiki/php-master/includes/changes/EnhancedChangesList.php(118): EnhancedChangesList->recentChangesBlock()
#29 /srv/mediawiki/php-master/includes/specials/SpecialRecentChanges.php(440): EnhancedChangesList->recentChangesLine(RecentChange, boolean, integer)
#30 /srv/mediawiki/php-master/includes/specialpage/ChangesListSpecialPage.php(1661): SpecialRecentChanges->outputChangesList(Wikimedia\Rdbms\ResultWrapper, FormOptions)
#31 /srv/mediawiki/php-master/includes/specialpage/ChangesListSpecialPage.php(671): ChangesListSpecialPage->webOutput(Wikimedia\Rdbms\ResultWrapper, FormOptions)
#32 /srv/mediawiki/php-master/includes/specials/SpecialRecentChanges.php(164): ChangesListSpecialPage->execute(NULL)
#33 /srv/mediawiki/php-master/includes/specialpage/SpecialPage.php(575): SpecialRecentChanges->execute(NULL)
#34 /srv/mediawiki/php-master/includes/specialpage/SpecialPageFactory.php(616): SpecialPage->run(NULL)
#35 /srv/mediawiki/php-master/includes/MediaWiki.php(298): MediaWiki\Special\SpecialPageFactory->executePath(Title, RequestContext)
#36 /srv/mediawiki/php-master/includes/MediaWiki.php(971): MediaWiki->performRequest()
#37 /srv/mediawiki/php-master/includes/MediaWiki.php(534): MediaWiki->main()
#38 /srv/mediawiki/php-master/index.php(47): MediaWiki->run()
#39 /srv/mediawiki/w/index.php(3): require(string)
#40 {main}

Event Timeline

Addshore raised the priority of this task from High to Unbreak Now!.

THis currently will roll out with the train for .19, so UBN
That UBN could be revert.. or fix....

Change 570878 had a related patch set uploaded (by Jakob; owner: Jakob):
[mediawiki/extensions/Wikibase@master] Use local part instead of full id serialization in cache key

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

Change 570879 had a related patch set uploaded (by WMDE-leszek; owner: WMDE-leszek):
[mediawiki/extensions/Wikibase@master] Do not prefix IDs in HtmlPageLinkRendererBeginHookHandler when not needed

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

Change 570879 merged by jenkins-bot:
[mediawiki/extensions/Wikibase@master] Do not prefix IDs in HtmlPageLinkRendererBeginHookHandler when not needed

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

Loads for me now!

Change 570878 abandoned by Jakob:
Use local part instead of full id serialization in cache key

Reason:
Solid reasoning in the last two comments here. T245396 to the rescue!

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