Element-web: New room list does not function well when all rooms are shown (large accounts)

Created on 16 Jul 2020  路  3Comments  路  Source: vector-im/element-web

Most helpful comment

I've switched to the new room list, my account is okay on my workstation (I didn't notice issues there), but it turned element on my Pinebook Pro from "okay" to "infuriatingly slow".

In the configuration I'd want to use ideally (all rooms, top 10 of other categories), it takes 8 seconds to switch a room, 2 seconds to even highlight it when hovering over it with the mouse. Composing messages is a pain to, since the composer lags between a few hundred ms to a few s behind what I'm actually typing. It's slowing down my laptop enough, that I actually closed element to submit this comment...

Even with everything reduced to top 5, the performance is bad, it takes 3.5s to switch rooms. With everything fully collapsed, it takes 1.5s, which is annoying, but bearable.

ftr, on account size: I have 916 visible rooms (so with old, upgraded rooms likely a few more in total).

All 3 comments

I've switched to the new room list, my account is okay on my workstation (I didn't notice issues there), but it turned element on my Pinebook Pro from "okay" to "infuriatingly slow".

In the configuration I'd want to use ideally (all rooms, top 10 of other categories), it takes 8 seconds to switch a room, 2 seconds to even highlight it when hovering over it with the mouse. Composing messages is a pain to, since the composer lags between a few hundred ms to a few s behind what I'm actually typing. It's slowing down my laptop enough, that I actually closed element to submit this comment...

Even with everything reduced to top 5, the performance is bad, it takes 3.5s to switch rooms. With everything fully collapsed, it takes 1.5s, which is annoying, but bearable.

ftr, on account size: I have 916 visible rooms (so with old, upgraded rooms likely a few more in total).

I experience composer lag too, after Riot became Element. Could it be due to new roomlist? I don't see a way to disable it now.

image

Test case: 3000 rooms shown, receive an event

Looks like we might be sending too much to React to figure out. The room list only takes 4.22ms to figure out what it needs to look like, but then spends well over a second making that change happen (the screenshot shows ~779ms of this). This is likely because we're not scoping the list updates to a particular tag, and thus re-render the entire list. We probably do not need to be remounting everything.

Was this page helpful?
0 / 5 - 0 ratings