Track disconnected issue
- Dominant language
- Zig
- Stars
- 97
- Forks
- 39
- PR merge metrics
- No merged PRs in 30d
Description
> If qlean is unable to handle the requests then the requests will continue to be added in `pending_rpc_requests` in `sendStatusRequest` function. I think we need to have a timeout mechanism here else the `PendingRPCMap` will grow excessive large and lead to huge memory usuage.
>
> Currently the pending response gets cleared if a response or an error is received but it should be pruned on TTL basis as well I believe.
Cool, will look if it is internally also have a timeout, on the ansible test, the error is `timedout`. And right now this request only triggered on peer connected may be not a big problem.
And actually I found lantern could handle this rpc but finally we still disconnect with lantern, the root cause probably not found right now, this change works verified on the ansible test by @ch4r10t33r. Create another issue to continue tracking the disconnect issue.
_Originally posted by @GrapeBaBa in https://github.com/blockblaz/zeam/issues/438#issuecomment-3674593746_
Contributor guide
No contributing guide indexed for this repository
Research direction
Start in the sendStatusRequest function and trace how pending_rpc_requests and PendingRPCMap are populated and cleared. Determine the TTL behavior needed for unanswered requests, then verify that timed-out entries are pruned and the pending map remains bounded.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- zig
- Domain
- networking
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100