Kick draws hundreds of 429s every time it reconnects #241

Closed
opened 2026-10-01 23:59:58 -04:00 by Salastil · 2 comments
Owner

531 Kick answered 429 Too Many Requests warnings in the current moho.log, in bursts of about fifteen at each reconnect. The retry in socket.rs recovers every channel, so nothing goes missing - but a reconnect takes longer than it should and the log is mostly this.

Connecting at three at a time is still too fast for an account with this many channels after a reconnect (the comment above CONNECT_CONCURRENCY says four; the constant is three). Pace it by what Kick's 429 says - a Retry-After or a backoff shared by the whole batch - rather than each channel retrying on its own clock.

531 `Kick answered 429 Too Many Requests` warnings in the current moho.log, in bursts of about fifteen at each reconnect. The retry in socket.rs recovers every channel, so nothing goes missing - but a reconnect takes longer than it should and the log is mostly this. Connecting at three at a time is still too fast for an account with this many channels after a reconnect (the comment above CONNECT_CONCURRENCY says four; the constant is three). Pace it by what Kick's 429 says - a Retry-After or a backoff shared by the whole batch - rather than each channel retrying on its own clock.
Salastil added this to the v1.0 milestone 2026-10-01 23:59:58 -04:00
Salastil added the buglow priority labels 2026-10-01 23:59:58 -04:00
Author
Owner

Fixed in code, waiting on a live check before closing.

A reconnect now resubscribes channels it already knows without asking Kick, and only fetches one page of history each; the connect-time requests share one pause on a 429. Tested against a local server that answers 429; not yet seen against Kick. To confirm: after moho restarts on this build, a reconnect should log no 'Kick answered 429' lines.

f592a22a16
34ade1aa8a

Fixed in code, waiting on a live check before closing. A reconnect now resubscribes channels it already knows without asking Kick, and only fetches one page of history each; the connect-time requests share one pause on a 429. Tested against a local server that answers 429; not yet seen against Kick. To confirm: after moho restarts on this build, a reconnect should log no 'Kick answered 429' lines. https://git.salastil.com/Salastil/nobilis/commit/f592a22a16e3593bf104b9c99221af38320d2657 https://git.salastil.com/Salastil/moho/commit/34ade1aa8a17ff4d3ff80224c74287cf42772617
Author
Owner
Finished https://git.salastil.com/Salastil/nobilis/commit/f592a22a16e3593bf104b9c99221af38320d2657 https://git.salastil.com/Salastil/nobilis/commit/c99d52be6144070ad8ad80b09acaf7b672251206 https://git.salastil.com/Salastil/nobilis/commit/c2e40dd5b667962d02870926088c87d46d774c6a https://git.salastil.com/Salastil/nobilis/commit/2732d0868577342a9048dc077631f741d7954ed7 https://git.salastil.com/Salastil/moho/commit/34ade1aa8a17ff4d3ff80224c74287cf42772617 https://git.salastil.com/Salastil/moho/commit/338095642ca0de4662ce5a04e457db0985833a01 https://git.salastil.com/Salastil/moho/commit/6fcc83a9b372ef46e5dfae8f3b484b4521c66023
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Salastil/moho#241