blockblaz / blockblaz/zeam

Track disconnected issue

Open
#439 0 comments 0 reactions 0 assignees View on GitHub
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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.