Jump to content

Module talk:WikiProject banner/Archive 15

Page contents not supported in other languages.
From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Lowercase sigmabot III (talk | contribs) at 17:29, 24 May 2024 (Archiving 1 discussion(s) from Module talk:WikiProject banner) (bot). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
Archive 10Archive 13Archive 14Archive 15Archive 16

Execution time

I've recently been looking into the execution time of this module due to a couple of lua timeout errors occassionally popping up on larger pages with a lot of banner templates (e.g. 1, 2, 3 (not entirely wpb's fault)). I've already proposed a change to a module this module uses which should solve the issue well enough, but I think it's still worth looking into optimising this code.

I've noticed that this module can call Pagetype (which is intensive in comparison to most things required) on the same page up to (but not always) 3 times while handling a banner (see lines 161, 299, and 327). Considering 2 of them are caused by calling class_mask (definitely a duplicate pagetype call we don't need to make), I feel like it should be possible to reduce the max calls to 2, but the functionality of some of this module is beyond me (no clue what FQS means to start with), so I'm not confident I could optimise this myself without breaking some sort of functionality. Could someone consider taking a look at this? Aidan9382 (talk) 22:16, 21 March 2024 (UTC)

I guess it should be possible to reduce the calls to pagetype to 1. I'll have a look when I get a chance — Martin (MSGJ · talk) 22:38, 21 March 2024 (UTC)
Okay please have a look at my changes in the sandbox. There would need to be a minor change to Module:Banner shell at the same time — Martin (MSGJ · talk) 12:32, 22 March 2024 (UTC)
No comment on functionality, but I imagine there are testcases for this module in terms of that (though unless there was some sort of super specific scenario where the main function specifically but not the class mask wanted to ignore disambiguation, I doubt anything is broken). Thanks to this change and a change in a different module, the sandbox version is now running about 6.5 times faster than the live version in the worst case scenario (significantly large pages, all 3 pagetype calls - I'm using Talk:List of common misconceptions for my testcases), which is a huge improvement, so thanks for doing that. I'd recommend updating banner shell before this module whenever that happens so there isn't a small window where stuff breaks. Aidan9382 (talk) 17:04, 22 March 2024 (UTC)
Great. I've implemeneted your changes to pagetype. I will have a look to see if any other changes are needed to banner shell and then probably do that one later today. Can I ask how you came across Talk:List of common misconceptions and discovered the issue? By the way, when we have resolved all the conflicting article ratings, I hope we will be able to improve efficiency by just doing the quality assessment once (on the banner shell) rather than having to it on each individual banner — Martin (MSGJ · talk) 19:30, 22 March 2024 (UTC)
I came across that talk page since my bot, which handles bad archive values in {{User:MiszaBot/config}} as one of its tasks, kept throwing warnings for pages that had appeared in a tracking category despite having what it (correctly) thought was the already right input (you can see the result of me purging some of the pages to temporarily remove the timeout in Special:Diff/1214818416). I just removed templates and used show preview till I found what was responsible for the majority of the execution time, which is why I've been improving the execution time of multiple modules recently. Aidan9382 (talk) 19:39, 22 March 2024 (UTC)
New code deployed, so hopefully that reduces the lag on these pages — Martin (MSGJ · talk) 21:06, 24 March 2024 (UTC)
Thanks, stuff's looking much better now (not even 2s on the misconceptions page compared to over 6s before the updates). Aidan9382 (talk) 21:28, 24 March 2024 (UTC)