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
{{ message }}
Repository navigation
[AnalyticalTable]: [Sluggish scrolling in v2] #6615
We are upgrading to v2 and noticed an overall slowdown in the performance of the AnalyticalTable component compared to v1, especially when scrolling.
Performance obviously has to do with the number or rows, columns, cell renderer and so on, but in almost all cases the same tables in v1 behave more performant than in v2.
We have observed the same issue in our project. We found that this function getStyleStoreSymbol is using a significant amount of time:
And this performance issue is not specific to the AnalyticalTable but it is the most influenced as it will render a huge amount of components. Everything on the same page will become extremely slow.
Edit: Our observation is not the same as the demo page. On the demo page, it seems the time is mainly spend on layout and Chrome suggests that it's a forced reflow issue.
Unfortunately it's difficult to create a stackblitz for the performance issue we encountered... Please fix the performance issue on the demo page and I'll try to reproduce the issue with getStyleStoreSymbol.
With our next release, the performance of the docs view (overview) for the AnalyticalTable will be improved by rendering only the "Default" example initially. Additionally, the default example will then reflect the table's default props only (data and columns).
Regarding performance, we identified and fixed a memory leak in our StyleStore that affected the AnalyticalTable. A fix will be released next week at the latest.
We are still exploring ways to further improve performance. A major challenge is syncing the scroll behavior of two containers to ensure the scrollbar is always visible. Our current approach is suboptimal, but even after refactoring, I couldn't find a satisfactory solution. Syncing scrollTop between two containers inherently relies on JavaScript, which impacts performance. Do you have any ideas for a better approach?
Additionally, we plan to refactor the table to use a single stylesheet, avoiding calls to useStyleSheet deep within the component. This might provide a slight performance boost as well.
We have also been facing performance issues related to the AnalyticalTable, especially with a large dataset and when using a tree table. Is there any planned deadline for the refactors you've mentioned, @Lukas742? And, in the meantime, do you have any recommendations for teams working with the component to improve performance (we have already memoized the columns definition and all callback functions)?
The linked PR improves scroll performance overall, with the most noticeable gains when scrolling via the scrollbar.
If you still experience performance issues, please open a new issue and include a reproducible example. Scroll performance can vary greatly depending on the content being rendered, and custom cells in particular can have a significant impact. Providing a reproducible example ensures we can accurately identify and address the issue.
Thanks!
ui5-webcomponents-react-bot commented on Oct 6, 2025
Activity
azhu716 commentedon Nov 14, 2024
We have observed the same issue in our project. We found that this function getStyleStoreSymbol is using a significant amount of time:

And this performance issue is not specific to the AnalyticalTable but it is the most influenced as it will render a huge amount of components. Everything on the same page will become extremely slow.
Edit: Our observation is not the same as the demo page. On the demo page, it seems the time is mainly spend on layout and Chrome suggests that it's a forced reflow issue.

Unfortunately it's difficult to create a stackblitz for the performance issue we encountered... Please fix the performance issue on the demo page and I'll try to reproduce the issue with getStyleStoreSymbol.
Lukas742 commentedon Dec 5, 2024
Hi @azhu716 & @sdommel,
With our next release, the performance of the docs view (overview) for the
AnalyticalTablewill be improved by rendering only the "Default" example initially. Additionally, the default example will then reflect the table's default props only (dataandcolumns).Regarding performance, we identified and fixed a memory leak in our
StyleStorethat affected theAnalyticalTable. A fix will be released next week at the latest.We are still exploring ways to further improve performance. A major challenge is syncing the scroll behavior of two containers to ensure the scrollbar is always visible. Our current approach is suboptimal, but even after refactoring, I couldn't find a satisfactory solution. Syncing
scrollTopbetween two containers inherently relies on JavaScript, which impacts performance. Do you have any ideas for a better approach?Additionally, we plan to refactor the table to use a single stylesheet, avoiding calls to
useStyleSheetdeep within the component. This might provide a slight performance boost as well.fernandademery commentedon Jan 3, 2025
We have also been facing performance issues related to the
AnalyticalTable, especially with a large dataset and when using a tree table. Is there any planned deadline for the refactors you've mentioned, @Lukas742? And, in the meantime, do you have any recommendations for teams working with the component to improve performance (we have already memoized the columns definition and all callback functions)?Lukas742 commentedon Oct 6, 2025
Hi all,
The linked PR improves scroll performance overall, with the most noticeable gains when scrolling via the scrollbar.
If you still experience performance issues, please open a new issue and include a reproducible example. Scroll performance can vary greatly depending on the content being rendered, and custom cells in particular can have a significant impact. Providing a reproducible example ensures we can accurately identify and address the issue.
Thanks!
ui5-webcomponents-react-bot commentedon Oct 6, 2025
🎉 This issue has been resolved in version v2.15.0 🎉
The release is available on v2.15.0
Your semantic-release bot 📦🚀
fix(AnalyticalTable): improve scroll performance (UI5#7777)