Page MenuHomePhabricator

DB master connections requested by Flow on GET/HEAD requests
Closed, ResolvedPublic

Description

T94029: Spike: Avoid use of merge() in Flow caches


2015-10-14 08:49:44 mw1258 enwiki DBPerformance INFO: [GET] Expectation (masterConns <= 0) by MediaWiki::main not met:
[connect to 10.64.16.18 (flowdb)]
TransactionProfiler.php line 307 calls wfBacktrace()
TransactionProfiler.php line 146 calls TransactionProfiler->reportExpectationViolated()
LoadBalancer.php line 546 calls TransactionProfiler->recordConnection()
DbFactory.php line 55 calls LoadBalancer->getConnection()
BasicDbStorage.php line 138 calls Flow\DbFactory->getDB()
BasicDbStorage.php line 160 calls Flow\Data\Storage\BasicDbStorage->find()
BasicDbStorage.php line 169 calls Flow\Data\Storage\BasicDbStorage->fallbackFindMulti()
FeatureIndex.php line 626 calls Flow\Data\Storage\BasicDbStorage->findMulti()
FeatureIndex.php line 413 calls Flow\Data\Index\FeatureIndex->backingStoreFindMulti()
ObjectLocator.php line 80 calls Flow\Data\Index\FeatureIndex->findMulti()
ObjectLocator.php line 55 calls Flow\Data\ObjectLocator->findMulti()
- line - calls Flow\Data\ObjectLocator->find()
ManagerGroup.php line 129 calls call_user_func_array()
ManagerGroup.php line 141 calls Flow\Data\ManagerGroup->call()
ReferenceClarifier.php line 114 calls Flow\Data\ManagerGroup->find()
ReferenceClarifier.php line 71 calls Flow\ReferenceClarifier->loadReferencesForPage()
ReferenceClarifier.php line 25 calls Flow\ReferenceClarifier->getWikiReferences()
Hooks.php line 1116 calls Flow\ReferenceClarifier->getWhatLinksHereProps()
Hooks.php line 204 calls FlowHooks::onWhatLinksHereProps()
SpecialWhatlinkshere.php line 350 calls Hooks::run()
SpecialWhatlinkshere.php line 293 calls SpecialWhatLinksHere->listItem()
SpecialWhatlinkshere.php line 96 calls SpecialWhatLinksHere->showIndirectLinks()
SpecialPage.php line 384 calls SpecialWhatLinksHere->execute()
SpecialPageFactory.php line 553 calls SpecialPage->run()
MediaWiki.php line 249 calls SpecialPageFactory::executePath()
MediaWiki.php line 662 calls MediaWiki->performRequest()
MediaWiki.php line 475 calls MediaWiki->main()
index.php line 41 calls MediaWiki->run()
index.php line 3 calls include()

Details

Related Gerrit Patches:
mediawiki/extensions/Flow : masterStop reading from DB_MASTER

Event Timeline

aaron created this task.Mar 26 2015, 2:39 PM
aaron raised the priority of this task from to Needs Triage.
aaron updated the task description. (Show Details)
aaron added subscribers: aaron, EBernhardson.
Restricted Application added a subscriber: Aklapper. · View Herald TranscriptMar 26 2015, 2:39 PM

@aaron: Please set projects when creating tasks otherwise basically noone will find them.

EBernhardson triaged this task as High priority.Mar 27 2015, 5:43 PM
Restricted Application added a project: Collaboration-Team-Triage. · View Herald TranscriptMar 30 2015, 6:17 PM
Gilles added a subscriber: Gilles.Apr 2 2015, 12:24 PM
mark added a subscriber: mark.Sep 15 2015, 1:28 PM
Catrope updated the task description. (Show Details)Oct 14 2015, 11:48 PM
Catrope updated the task description. (Show Details)

Change 247575 had a related patch set uploaded (by Matthias Mullie):
Stop reading from DB_MASTER

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

Change 247575 merged by jenkins-bot:
Stop reading from DB_MASTER

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

aaron added a comment.Nov 17 2015, 2:38 AM

Any update on this?

This patch got merged: there should now be no more DB_MASTER reads on GET requests.
DB_MASTER traffic went from 2392 to 979 QPS & DB_SLAVE from 499 to 1938 QPS (see more here: https://phabricator.wikimedia.org/T94029#1795841)

aaron closed this task as Resolved.Nov 17 2015, 7:06 AM

Searching for '+channel:DBPerformance +message:*Flow* -message:*CentralAuthUser*' seems to confirm this.