You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The assemblies admin page load doesn't scale properly when the number of assemblies in the organization increases. When the organization has more than 50 assemblies (it's not a huge number at all), the response time starts to become a problem.
I attach the mean response time for 50, 100, and 150 assemblies below (measured locally with an Apple Silicon M1 Max):
Number of assemblies
Response time (ms)
50
4471
100
8210
150
12139
I detected the fall of performance comes from the method assembly_admin_allowed_assemblies in the Decidim::Assemblies::Permissions introduced with this PR: #8773
This poor performance was detected in Decidim Barcelona where they have almost 500 assemblies, and the admins get mad when they need to do something related to an assembly.
To Reproduce
In a fresh installation of Decidim create a considerable number of assemblies (please, use a script instead of doing it manually)
Go to /admin/assemblies and see how it takes too long to load the page.
Expected behavior
It shouldn't take too long to load a page where the content is being paginated.
Screenshots
Video showing the log while loading the page in an instance with 150 assemblies.
Screen.Recording.2023-11-07.at.10.08.08.mov
Stacktrace
No response
Extra data
Device: Desktop
Device OS: MacOS Sonoma 14.0
Browser: Safari 17.0
Decidim Version: 0.28.dev (detected on 0.27.4, it happened on 0.26.x too)
Decidim installation: Local (detected on Decidim Barcelona)
Describe the bug
The assemblies admin page load doesn't scale properly when the number of assemblies in the organization increases. When the organization has more than 50 assemblies (it's not a huge number at all), the response time starts to become a problem.
I attach the mean response time for 50, 100, and 150 assemblies below (measured locally with an Apple Silicon M1 Max):
I detected the fall of performance comes from the method
assembly_admin_allowed_assembliesin theDecidim::Assemblies::Permissionsintroduced with this PR: #8773This poor performance was detected in Decidim Barcelona where they have almost 500 assemblies, and the admins get mad when they need to do something related to an assembly.
To Reproduce
/admin/assembliesand see how it takes too long to load the page.Expected behavior
It shouldn't take too long to load a page where the content is being paginated.
Screenshots
Video showing the log while loading the page in an instance with 150 assemblies.
Screen.Recording.2023-11-07.at.10.08.08.mov
Stacktrace
No response
Extra data
Additional context
No response