fetch_chats is sequential #52

Closed
opened 2026-04-19 08:25:35 +00:00 by zaelgohary · 1 comment
Member

services::fetch_chats was awaiting conversation_get(sid) once per SID in a for loop. With ~10 conversations and ~50 ms per call that's a half-second stall on archipelago mount.

Fix: parallelize with futures::future::join_all, matching the pattern used in fetch_messages. Per-conversation errors are still warn-logged and dropped from the result.

`services::fetch_chats` was awaiting `conversation_get(sid)` once per SID in a `for` loop. With ~10 conversations and ~50 ms per call that's a half-second stall on archipelago mount. **Fix**: parallelize with `futures::future::join_all`, matching the pattern used in `fetch_messages`. Per-conversation errors are still warn-logged and dropped from the result.
zaelgohary changed title from perf: fetch_chats is sequential to fetch_chats is sequential 2026-04-19 08:32:20 +00:00
Author
Member

Fixed by #56.

Fixed by https://forge.ourworld.tf/lhumina_code/hero_archipelagos/pulls/56.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_archipelagos#52
No description provided.