Page MenuHomePhabricator

Regression: Exception in WinCacheBagOStuff after upgrade to 1.27.2: getWithToken() not implemented
Closed, ResolvedPublic

Description

After upgrading from 1.27.1 to 1.27.2 i got this message, when index.php is loading (with $wgShowExceptionDetails = true;):

Exception encountered, of type "Exception"
[eb539e466854b0245b56cd28] /index.php?title=Hauptseite Exception from line 232 of D:\wiki_www\includes\libs\objectcache\BagOStuff.php: BagOStuff::getWithToken not implemented.
Backtrace:
#0 D:\wiki_www\includes\libs\objectcache\BagOStuff.php(289): BagOStuff->getWithToken(string, NULL, integer)
#1 D:\wiki_www\includes\libs\objectcache\WinCacheBagOStuff.php(59): BagOStuff->mergeViaCas(string, Closure, integer, integer)
#2 D:\wiki_www\includes\libs\objectcache\WANObjectCache.php(424): WinCacheBagOStuff->merge(string, Closure, integer, integer)
#3 D:\wiki_www\includes\cache\MessageCache.php(697): WANObjectCache->set(string, array, integer)
#4 D:\wiki_www\includes\cache\MessageCache.php(642): MessageCache->setValidationHash(string, array)
#5 D:\wiki_www\includes\cache\MessageCache.php(411): MessageCache->saveToCaches(array, string, string)
#6 D:\wiki_www\includes\cache\MessageCache.php(331): MessageCache->loadFromDBWithLock(string, array, NULL)
#7 D:\wiki_www\includes\cache\MessageCache.php(930): MessageCache->load(string)
#8 D:\wiki_www\includes\cache\MessageCache.php(864): MessageCache->getMsgFromNamespace(string, string)
#9 D:\wiki_www\includes\cache\MessageCache.php(832): MessageCache->getMessageForLang(Language, string, boolean, array)
#10 D:\wiki_www\includes\cache\MessageCache.php(773): MessageCache->getMessageFromFallbackChain(Language, string, boolean)
#11 D:\wiki_www\includes\Message.php(1178): MessageCache->get(string, boolean, Language)
#12 D:\wiki_www\includes\Message.php(801): Message->fetchMessage()
#13 D:\wiki_www\includes\Message.php(892): Message->toString()
#14 D:\wiki_www\includes\OutputPage.php(927): Message->text()
#15 D:\wiki_www\includes\OutputPage.php(975): OutputPage->setHTMLTitle(Message)
#16 D:\wiki_www\includes\page\Article.php(504): OutputPage->setPageTitle(string)
#17 D:\wiki_www\includes\actions\ViewAction.php(44): Article->view()
#18 D:\wiki_www\includes\MediaWiki.php(493): ViewAction->show()
#19 D:\wiki_www\includes\MediaWiki.php(288): MediaWiki->performAction(Article, Title)
#20 D:\wiki_www\includes\MediaWiki.php(735): MediaWiki->performRequest()
#21 D:\wiki_www\includes\MediaWiki.php(509): MediaWiki->main()
#22 D:\wiki_www\index.php(43): MediaWiki->run()
#23 {main}

Downgrading on 1.27.1 worked for me.

MediaWiki 1.27.1
PHP 5.6.30 (cgi-fcgi)
MariaDB 10.0.30-MariaDB
ICU 57.1

Regards Odi

Event Timeline

Aklapper renamed this task from Exception encountered after Upgrade on 1.27.2 to Exception encountered after upgrade to 1.27.2: getWithToken() not implemented.Apr 10 2017, 1:10 PM
Aklapper added subscribers: aaron, Krinkle.

Thanks for taking the time to report this! CC'ing @aaron / @Krinkle (author / reviewer).
Looking at https://releases.wikimedia.org/mediawiki/1.27/mediawiki-1.27.2.patch.gz , the function protected function getWithToken got removed in /includes/libs/objectcache/WinCacheBagOStuff.php in order to fix T120896 (Link to commit in git master).

Krinkle renamed this task from Exception encountered after upgrade to 1.27.2: getWithToken() not implemented to Regression: Exception in WinCacheBagOStuff after upgrade to 1.27.2: getWithToken() not implemented.Apr 10 2017, 11:15 PM
Krinkle triaged this task as High priority.
Krinkle added a project: Performance-Team.
Krinkle moved this task from General to libs/objectcache on the MediaWiki-libs-BagOStuff board.

Change 348162 had a related patch set uploaded (by Aaron Schulz):
[mediawiki/core@REL1_27] Fix broken wincache merge() implementation

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

Change 348162 merged by jenkins-bot:
[mediawiki/core@REL1_27] Fix broken wincache merge() implementation

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