From 4c9266b17a62c755441d37f9ce77c0cf3b3a1304 Mon Sep 17 00:00:00 2001 From: Giom Foret Date: Wed, 28 Jun 2023 10:10:37 +0200 Subject: [PATCH] Update "Potential issues" section --- ...-encrypted-events-except-for-muted-rooms.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/proposals/4028-push-all-encrypted-events-except-for-muted-rooms.md b/proposals/4028-push-all-encrypted-events-except-for-muted-rooms.md index 51c74e2b7da..15fd8cea43e 100644 --- a/proposals/4028-push-all-encrypted-events-except-for-muted-rooms.md +++ b/proposals/4028-push-all-encrypted-events-except-for-muted-rooms.md @@ -91,7 +91,23 @@ When this rule will be present and enabled in the account push rules set, the cl ## Potential issues -Until a client is updated to support this MSC, it may display a high number of unread notifications for encrypted rooms. The first workaround would be to not display the count for the encrypted rooms when the rule `.m.rule.encrypted_event` is present and enabled in the account push rules set, until the suggested algorithm is implemented. +### Client side + +#### Unexpected unread counts +Until a client is updated to support this MSC, it may display a high number of unread notifications for encrypted rooms. The first workaround would be to not display the count for the encrypted rooms when the rule `.m.rule.encrypted_event` is present and enabled in the account push rules set, until the suggested algorithm is implemented, at least for the mentions-and-keywords-only encrypted rooms. + +#### Battery life +The mobile client will wake up more frequently than currently. We will have to control any potential issue with battery life when we will implement this MSC. The impact on the battery life will be definitly lower than the one observed on clients without push service which poll for events in the background. The end user will be able to reduce the impact by muting some encrypted rooms. + +### Server side + +#### Event fetching +The clients with push services will request more frequently the server to retrieve the event contents. I'm mainly thinking about an encrypted room with a high number of members, each mobile client of these members will try to retrieve simultaneously the event content of each new encrypted event (pushed by the server). This scenario may happen today only when most of the members configure the room in "All messages" mode. + +This may be a potential performance issue if each client fetchs separately each pushed event. But this should not be the case, because the clients have to run a sync if they want to be able to receive potential new encryption keys through to_devices. So they will retrieve more than one event at the time. + +#### Push sending +Push is a huge bottleneck on the sending side. So calculating what to push and the unread counts (its the same process) is a big performance bottleneck currently when sending in large rooms. A bunch of optimisation has taken place to make that better, but its still quite expensive. We should plan an effort to limit potential issue server side here. ## Alternatives