Page MenuHomePhabricator

Resource loader doing many queries on every request
Closed, ResolvedPublic

Description

Here's a snippet.

0.0439 Query 15 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'vector' AND mr_lang = 'fi' LIMIT 1
0.0444 Query 16 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery' AND mr_lang = 'fi' LIMIT 1
0.0449 Query 17 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.async' AND mr_lang = 'fi' LIMIT 1
0.0453 Query 18 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.autoEllipsis' AND mr_lang = 'fi' LIMIT 1
0.0457 Query 19 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.color' AND mr_lang = 'fi' LIMIT 1
0.0461 Query 20 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.cookie' AND mr_lang = 'fi' LIMIT 1
0.0466 Query 21 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.delayedBind' AND mr_lang = 'fi' LIMIT 1
0.0470 Query 22 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.expandableField' AND mr_lang = 'fi' LIMIT 1
0.0477 Query 23 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.highlightText' AND mr_lang = 'fi' LIMIT 1
0.0483 Query 24 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.suggestions' AND mr_lang = 'fi' LIMIT 1
0.0490 Query 25 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.tabIndex' AND mr_lang = 'fi' LIMIT 1
0.0496 Query 26 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.textSelection' AND mr_lang = 'fi' LIMIT 1
0.0499 Query 27 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.core' AND mr_lang = 'fi' LIMIT 1
0.0504 Query 28 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.widget' AND mr_lang = 'fi' LIMIT 1
0.0510 Query 29 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.mouse' AND mr_lang = 'fi' LIMIT 1
0.0515 Query 30 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.position' AND mr_lang = 'fi' LIMIT 1
0.0519 Query 31 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.draggable' AND mr_lang = 'fi' LIMIT 1
0.0523 Query 32 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.droppable' AND mr_lang = 'fi' LIMIT 1
0.0529 Query 33 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.resizable' AND mr_lang = 'fi' LIMIT 1
0.0537 Query 34 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.selectable' AND mr_lang = 'fi' LIMIT 1
0.0543 Query 35 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.sortable' AND mr_lang = 'fi' LIMIT 1
0.0549 Query 36 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.accordion' AND mr_lang = 'fi' LIMIT 1
0.0556 Query 37 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.autocomplete' AND mr_lang = 'fi' LIMIT 1
0.0562 Query 38 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.button' AND mr_lang = 'fi' LIMIT 1
0.0567 Query 39 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.datepicker' AND mr_lang = 'fi' LIMIT 1
0.0572 Query 40 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.dialog' AND mr_lang = 'fi' LIMIT 1
0.0576 Query 41 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.progressbar' AND mr_lang = 'fi' LIMIT 1
0.0581 Query 42 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.slider' AND mr_lang = 'fi' LIMIT 1
0.0586 Query 43 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.ui.tabs' AND mr_lang = 'fi' LIMIT 1
0.0592 Query 44 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.core' AND mr_lang = 'fi' LIMIT 1
0.0596 Query 45 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.blind' AND mr_lang = 'fi' LIMIT 1
0.0603 Query 46 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.bounce' AND mr_lang = 'fi' LIMIT 1
0.0608 Query 47 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.clip' AND mr_lang = 'fi' LIMIT 1
0.0616 Query 48 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.drop' AND mr_lang = 'fi' LIMIT 1
0.0621 Query 49 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.explode' AND mr_lang = 'fi' LIMIT 1
0.0629 Query 50 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.fold' AND mr_lang = 'fi' LIMIT 1
0.0634 Query 51 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.highlight' AND mr_lang = 'fi' LIMIT 1
0.0642 Query 52 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.pulsate' AND mr_lang = 'fi' LIMIT 1
0.0649 Query 53 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.scale' AND mr_lang = 'fi' LIMIT 1
0.0653 Query 54 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.shake' AND mr_lang = 'fi' LIMIT 1
0.0657 Query 55 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.slide' AND mr_lang = 'fi' LIMIT 1
0.0661 Query 56 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'jquery.effects.transfer' AND mr_lang = 'fi' LIMIT 1
0.0666 Query 57 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki' AND mr_lang = 'fi' LIMIT 1
0.0671 Query 58 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.util.client' AND mr_lang = 'fi' LIMIT 1
0.0676 Query 59 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.ajax' AND mr_lang = 'fi' LIMIT 1
0.0680 Query 60 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.ajaxwatch' AND mr_lang = 'fi' LIMIT 1
0.0685 Query 61 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.block' AND mr_lang = 'fi' LIMIT 1
0.0689 Query 62 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.changepassword' AND mr_lang = 'fi' LIMIT 1
0.0694 Query 63 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.commonPrint' AND mr_lang = 'fi' LIMIT 1
0.0698 Query 64 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.config' AND mr_lang = 'fi' LIMIT 1
0.0702 Query 65 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.diff' AND mr_lang = 'fi' LIMIT 1
0.0706 Query 66 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.edit' AND mr_lang = 'fi' LIMIT 1
0.0710 Query 67 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.enhancedchanges' AND mr_lang = 'fi' LIMIT 1
0.0714 Query 68 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.history' AND mr_lang = 'fi' LIMIT 1
0.0718 Query 69 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.htmlform' AND mr_lang = 'fi' LIMIT 1
0.0722 Query 70 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.IEFixes' AND mr_lang = 'fi' LIMIT 1
0.0726 Query 71 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.metadata' AND mr_lang = 'fi' LIMIT 1
0.0731 Query 72 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.mwsuggest' AND mr_lang = 'fi' LIMIT 1
0.0735 Query 73 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.password' AND mr_lang = 'fi' LIMIT 1
0.0741 Query 74 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.prefs' AND mr_lang = 'fi' LIMIT 1
0.0744 Query 75 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.preview' AND mr_lang = 'fi' LIMIT 1
0.0749 Query 76 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.protect' AND mr_lang = 'fi' LIMIT 1
0.0754 Query 77 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.rightclickedit' AND mr_lang = 'fi' LIMIT 1
0.0758 Query 78 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.search' AND mr_lang = 'fi' LIMIT 1
0.0763 Query 79 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.shared' AND mr_lang = 'fi' LIMIT 1
0.0767 Query 80 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.oldshared' AND mr_lang = 'fi' LIMIT 1
0.0771 Query 81 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.upload' AND mr_lang = 'fi' LIMIT 1
0.0775 Query 82 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.wikibits' AND mr_lang = 'fi' LIMIT 1
0.0779 Query 83 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'mediawiki.legacy.wikiprintable' AND mr_lang = 'fi' LIMIT 1
0.0784 Query 84 (slave): SELECT /* ResourceLoaderFileModule::getModifiedTime Nike */ mr_timestamp FROM bw_msg_resource WHERE mr_resource = 'translate-css' AND mr_lang = 'fi' LIMIT 1


Version: unspecified
Severity: normal

Details

Reference
bz25143

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 11:17 PM
bzimport set Reference to bz25143.

Should be able to save some here by combining queries and not grabbing mr_timestamp for modules with no messages.

r72949 fixes this the best I can see it can be fixed - and it does a good job. I just did what Roan suggested and made sure that we don't query the database for message blob timestamp information unless there are messages defined in the module.

I think we can do better still by grouping the queries. Reopening for now.

Grouping queries is done now (r73645). I believe this has been addressed.