Projects tigase _server tigase-muc Issues #149
Remove RoomWithId and simply use rooms JID (#149)
wojciech.kapcia@tigase.net opened 2 years ago

Following #issue #148, #issue #145 and #issue #142 it was decided that it would be better to simply use room JID as key instead of dedicated ID generated by the database.

Andrzej Wójcik (Tigase) commented 2 years ago

Or if not, we should create a single source of truth for room jid uniqueness. Right now we have persistent and non-persistent rooms and that causes issues as non-persistent rooms are not in the database but only kept in memory. This forces us to create a room and add it to a collection of rooms in memory to keep room jid unique while later on database issues may lead to the room being not removed from this collection.

As with clustered version we enforce that all rooms are "presistent" (stored in the database), I do think it would be good to store in the database both types of rooms (persistent and non-persistent), but remove non-persistent when the last occupant will leave the room. This would allow us to have list of all rooms in the database and that would create a single source of truth for room existence and configuration for MUC component.

wojciech.kapcia@tigase.net commented 2 years ago

That's also an option but that would create a lot of unnecessary overhead in cases where there a lot of non-persistent, short-lived rooms.

I still think we should still move to using room JID as the id/key as it would simplify the logic but that can be discussed/decided in the future (9.0).

wojciech.kapcia@tigase.net batch edited 7 months ago
Name Previous Value Current Value
Iterations
empty
Candidate for next major release
issue 1 of 1
Type
Task
Priority
Normal
Assignee
Version
Candidate for next major release
Issue Votes (0)
Watchers (2)
Reference
tigase/_server/tigase-muc#149
Please wait...
Page is in error, reload to recover