Page MenuHomePhabricator

MessageGroupStats::queueUpdates trigger on page views
Closed, ResolvedPublic

Description

Seen on /wiki/Special:LanguageStats:

Expectation (masterConns <= 0) by MediaWiki::main not met:
[connect to 10.64.16.30 (metawiki)]
TransactionProfiler.php line 311 calls wfBacktrace()
TransactionProfiler.php line 146 calls TransactionProfiler->reportExpectationViolated()
LoadBalancer.php line 571 calls TransactionProfiler->recordConnection()
GlobalFunctions.php line 3122 calls LoadBalancer->getConnection()
MessageGroupStats.php line 463 calls wfGetDB()
MessageGroupStats.php line 113 calls MessageGroupStats::queueUpdates()
SpecialLanguageStats.php line 370 calls MessageGroupStats::forLanguage()
SpecialLanguageStats.php line 157 calls SpecialLanguageStats->getTable()
SpecialPage.php line 417 calls SpecialLanguageStats->execute()
SpecialPageFactory.php line 572 calls SpecialPage->run()
MediaWiki.php line 282 calls SpecialPageFactory::executePath()
MediaWiki.php line 745 calls MediaWiki->performRequest()
MediaWiki.php line 519 calls MediaWiki->main()
index.php line 43 calls MediaWiki->run()
index.php line 3 calls include()

Event Timeline

Restricted Application added a subscriber: Zppix. · View Herald Transcript
aaron removed aaron as the assignee of this task.May 10 2016, 5:51 AM

Pretty much the same thing, yes. Only now it's deferred until end of request.

I have made further changes to this code. Not only should this be more rare, but with simple code change the updates done in a deferred update could be disabled altogether, leaving only the Job to be inserted in the JobQueue to do the processing.

According to Logstash, this warning no longer happens. But there is a new one about writes affecting more than 1000 rows. I will file a new task for that.