Skip to content

Duplicate DM in room list seen on Element X iOS #2773

@DMRobertson

Description

@DMRobertson

matrix-org/sliding-sync#325 was reported by @valynor three weeks ago. To quote their original report:

iPad Mini 2019, iOS 17.0.2, Element-X 1.3.1

I have a duplicate DM in the room list. It's only on EX, not in any of my 4 other sessions.

The first instance of the DM works normally. The 2nd instance:

* cannot be tapped (no reaction)

* can be long-pressed but choosing leave room just gives "Sorry, an error occurred"

There's no way to get rid of this duplicate room - a "clear cache & reload" would probably fix this but EX does not have this implemented yet.

Please add "clear cache & reload" soon, I'm using Element for ~3 years now and it reliably fixes things like these on regular Element iOS and Element-Web. EX really needs this setting, too.

In matrix-org/sliding-sync#325 (comment) I looked at the proxy logs and database to see if there was anything that could explain this behaviour, but didn't see any smoking guns. In the rageshake logs, I saw

ERROR elementx: Failed retrieving room with identifier: invalidated-!aBMLyCTbDuLlIkbReo:matrix.org 
ERROR elementx: Invalid room identifier: invalidated-!aBMLyCTbDuLlIkbReo:matrix.org 
ERROR elementx: Invalid roomListItem for identifier invalidated-!aBMLyCTbDuLlIkbReo:matrix.org

Speaking to the client folks (internal link), this is part of an attempt to "work around duplicated rooms". It doesn't seem to be working in this case though. Jonas seemed to understand how to fix this, though I confess the details went over my head.


One other thing I noticed in the rageshake was warnings of the form

WARN matrix_sdk_ui::timeline::traits: Unknown room version, falling back to v10 | crates/matrix-sdk-ui/src/timeline/traits.rs:82 | spans: root > build{room_id="!aBMLyCTbDuLlIkbReo:matrix.org" events_length=3 track_read_receipts=true prev_token="t621-4039038876_757284974_37752788_2224310583_2280660562_4395079_964647566_7819971614_0_138381"}
WARN matrix_sdk_ui::timeline::traits: Unknown room version, falling back to v10 | crates/matrix-sdk-ui/src/timeline/traits.rs:82 | spans: root > build{room_id="!aBMLyCTbDuLlIkbReo:matrix.org" events_length=3 track_read_receipts=true prev_token="t621-4039038876_757284974_37752788_2224310583_2280660562_4395079_964647566_7819971614_0_138381"} > add_initial_events
WARN matrix_sdk_ui::timeline::traits: Unknown room version, falling back to v10 | crates/matrix-sdk-ui/src/timeline/traits.rs:82 | spans: root > build{room_id="!aBMLyCTbDuLlIkbReo:matrix.org" events_length=3 track_read_receipts=true prev_token="t621-4039038876_757284974_37752788_2224310583_2280660562_4395079_964647566_7819971614_0_138381"} > room_update_handler{room_id="!aBMLyCTbDuLlIkbReo:matrix.org"} > handle_joined_room_update
WARN matrix_sdk_ui::timeline::traits: Unknown room version, falling back to v10 | crates/matrix-sdk-ui/src/timeline/traits.rs:82 | spans: root > paginate_backwards{room_id="!aBMLyCTbDuLlIkbReo:matrix.org" options=UntilNumItems { items: 50, event_limit: 20 }} > handle_back_paginated_events

I could see from the matrix.org DB that this is a version 9 room, not 10. I don't think this has any huge consequences, but it makes me slightly scared that the client isn't getting the room version information from the proxy.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions