[SIGNIFICANT] IPC channel capacity exhaustion under load #22
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The IPC command channel has capacity 64, and the event channel has capacity 256. Under rapid command load:
send().awaiton the command channel blocks when fullImpact
During high command volume (e.g., a script rapidly starting/stopping services, or a buggy client), the system becomes unresponsive. Clients hang and timeout, potentially leaving operations incomplete.
Files
crates/my_init_server/src/main.rs-- channel creation:mpsc::channel::<IpcCommand>(64),mpsc::channel(256)Suggested Fix
try_sendwith a fallback error responseConfirmed by the issue description referencing crates/my_init_server/src/main.rs — the mpsc::channel::(64) and mpsc::channel(256) limits. When either channel is full, send().await blocks the IPC socket reader, creating backpressure against TCP/Unix clients. No try_send fallback or rate-limiting exists.