[20:09:48] Amir1: I left one comment on https://gerrit.wikimedia.org/r/c/mediawiki/core/+/1306793 , I think setting TRX_ROUND_ABSENT in LinkUpdate would be OK enough for now. [21:57:29] https://performance.wikimedia.org/excimer/profile/9560d7b620d4395f [21:58:09] It looks like we're spending 35ms on a simple API query request calling ConfirmEdit captcha for $something, and then antoher 35ms calling TestKitchen for $something. [21:58:25] URL: https://en.wikipedia.org/w/api.php?action=query&format=json&prop=extracts&titles=Banana&formatversion=2&exchars=350&explaintext=1&exsectionformat=plain [21:59:30] TestKitchen\Hooks::onApiBeforeMain [22:00:05] mostly in User->isRegistered with indirect code from FlaggedRevs and CentralAuth. [22:00:16] Maybe it's bringing forward/re-arranging logic that woul dotherwise be attribuged elsewhere [22:00:36] although it seems strange that isRegistered would take 35-50ms on its own under normal circumstances [22:00:52] A chunk of it also in CommunityConfiguration [22:01:10] due to GrowthExperiments\Mentorship\Hooks\MentorHooks::onUserGetRights [22:01:39] all because isRegistered is hooked into by FlaggedRevs which in turn is asking for the isAllowed/userCan of something [22:02:39] For the ConfirmEdit/HCaptcha overhead, it starts at ConfirmEdit\Hooks::onAPIGetAllowedParams [22:03:19] and is largely because getActiveCaptchas() for some reason depends on acquiring the ResourceLoader service. [22:04:04] which in turn has its constructor footprint dominated by CheckUser\Hook\HookRunner::onCheckUserSuggestedInvestigationsGetSignals via onResourceLoaderRegisterModules [22:04:27] because that spends 26ms parsing wikitext for user interface messages [22:04:38] I'm sure all of that is absolutely needed in order to respond with a JSON page summary.