Skip to content

Disable tooltips on tables due to performance issues#1433

Merged
gregorydlogan merged 1 commit intoopencast:r/17.xfrom
Arnei:disable-tooltips-on-tables
Sep 25, 2025
Merged

Disable tooltips on tables due to performance issues#1433
gregorydlogan merged 1 commit intoopencast:r/17.xfrom
Arnei:disable-tooltips-on-tables

Conversation

@Arnei
Copy link
Copy Markdown
Member

@Arnei Arnei commented Sep 10, 2025

This commit disables tooltips for all table cells. For example, when moving the mouse over the red X in the events table, there will no longer be a tooltip showing. This is done to improve performance.

It appears that the mui tooltip component is not performant when used in large quantities. According to this comment on github it is not supposed to be:
mui/material-ui#27057 (comment)

I locally tested performance by profiling the rendering of the rows of the series table. The table had 1000 entries which necessitated 4000 tooltip components. Rendering the table with tooltips took about 3,7 seconds. Rendering the table without tooltips took about 1,2 seconds. I think this is way too much time for tooltips.

The goal of this commit is to be a quick fix for quick gains. A more proper long term solution would let us keep the tooltips, by for example working around the issue somehow or replacing mui tooltips with a different library.

How to test this

Have an Opencast backend that provides 1000 events or series to the admin interface. For series, you can currently also use develop.opencast.org as your Opencast backend. Then check how long the respective table takes to load with and without this PR. The difference should be noticable even without any time measurements.

This commit disables tooltips for all table cells. For example,
when moving the mouse over the red X in the events table,
there will no longer be a tooltip showing. This is done to
imporve performance.

It appears that the mui tooltip component is not performant when
used in large quantities. According to this comment on github it is not
supposed to be:
mui/material-ui#27057 (comment)

I locally tested performance by profiling the rendering of the rows of the
series table. The table had 1000 entries which necessitated 4000 tooltip
components. Rendering the table with tooltips took about 3,7 seconds.
Rendering the table without tooltips took about 1,2 seconds. I think
this is way too much time for tooltips.

The goal of this commit is to be a quick fix for quick gains.
A more proper long term solution would let us keep the tooltips, by for
example working around the issue somehow or replacing mui tooltips with
a different library.
@Arnei Arnei added the type:bug Something isn't working label Sep 10, 2025
@github-actions
Copy link
Copy Markdown
Contributor

Use docker or podman to test this pull request locally.

Run test server using develop.opencast.org as backend:

podman run --rm -it -p 127.0.0.1:3000:3000 ghcr.io/opencast/opencast-admin-interface:pr-1433

Specify a different backend like stable.opencast.org:

podman run --rm -it -p 127.0.0.1:3000:3000 -e PROXY_TARGET=https://stable.opencast.org ghcr.io/opencast/opencast-admin-interface:pr-1433

It may take a few seconds for the interface to spin up.
It will then be available at http://127.0.0.1:3000.
For more options you can pass on to the proxy, take a look at the README.md.

@gregorydlogan gregorydlogan self-assigned this Sep 25, 2025
@gregorydlogan gregorydlogan merged commit 9980bfd into opencast:r/17.x Sep 25, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

type:bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants