Improve acl tab performance for systems with many roles#1589
Improve acl tab performance for systems with many roles#1589Arnei wants to merge 1 commit intoopencast:r/19.xfrom
Conversation
Memoization should prevent the dropdown options from getting recreated on every rerender. This should speed up non-dropdown related actions, such as adding new roles or changing access rights, on systems with many roles.
|
Use Run test server using develop.opencast.org as backend: Specify a different backend like stable.opencast.org: It may take a few seconds for the interface to spin up. |
|
This pull request is deployed at test.admin-interface.opencast.org/1589/2026-04-28_09-25-08/ . |
ferishili
left a comment
There was a problem hiding this comment.
Thanks @Arnei,
I can confirm that this PR significantly improves the performance of the dropdown in the ACL tab.
One small observation (see attached video): when hovering over or changing dropdown options, it looks like the entire dropdown is re-rendered. Is this expected behavior, or could it be optimized to render once and then update without re-rendering on every interaction?
Screen.Recording.2026-04-28.at.11.37.52.-.720.mov
|
At the very least the visually changing elements must be re-rendered I suppose. If you have more ideas on how to optimize our dropdowns, you are welcome to contribut, arguably having dropdowns with this many options is bad design anyhow #1442. But that is not the goal of this PR. |
Memoization should prevent the dropdown options from getting recreated on every rerender. This should speed up non-dropdown related actions, such as adding new roles or changing access rights, on systems with many roles.
How to test this
Can be tested against develop, as there are many roles there.