RGJ
(Richard - Communiteq)
22.Октябрь.2025 10:00:15
1
Since a lot of plugins have been bundled with core, we’ve been seeing some performance impact.
When investigating, it turned out that some plugins are still injecting certain queries, even when disabled .
An example is the topic voting plugin.
The topic filter and the search filter and search order are always injected and active.
The code should be fenced with SiteSetting.topic_voting_enabled. Or maybe calls like register_search_advanced_filter should behave more like add_to_serializer and check if the plugin is enabled.
14 лайков
tgxworld
(Alan Tan)
23.Октябрь.2025 01:44:04
2
Thank you for the report. I’ve tagged this pri-medium for now and someone from the team will look at it soon.
Also putting a pr-welcome on this
4 лайка
loic
(Loïc Guitaut)
29.Октябрь.2025 11:55:35
4
I just finished a PR making most of the `register_*` calls behave like add_to_serializer:
main ← loic/disabled-plugins-perf-impact
merged 09:04AM - 30 Oct 25 UTC
Currently, when a plugin is disabled, its various callbacks are still taken into… account. This can lead to performance issues.
This PR adds a check to most of the `register_*` methods a plugin can use, so if the plugin is disabled, those callbacks won’t be applied.
4 лайка
loic
(Loïc Guitaut)
30.Октябрь.2025 09:07:12
5
The PR has just been merged, it should be available in latest shortly
3 лайка
RGJ
(Richard - Communiteq)
30.Октябрь.2025 09:27:54
7
Thanks, that is fantastic
Would a backport to stable be a possibility for this fix ?
3 лайка
loic
(Loïc Guitaut)
30.Октябрь.2025 10:04:58
8
Sure, I just created a PR:
stable ← loic/backport-disabled-plugins-fix-to-stable
merged 11:44AM - 30 Oct 25 UTC
Currently, when a plugin is disabled, its various callbacks are still taken into… account. This can lead to performance issues.
This patch adds a check to most of the `register_*` methods a plugin can use, so if the plugin is disabled, those callbacks won’t be applied.
3 лайка