hiero-ledger / hiero-ledger/hiero-consensus-node
Componentize `ConnectionServer`
- Dominant language
- Java
- Stars
- 406
- Forks
- 226
- Avg merge
- 3d 4h
- Merged PRs (30d)
- 210
Description
- the class `ConnectionServer` should become a task scheduler component
- the component should be part of a separate model from the platform
- its output should be incoming sockets
- it should also constantly be called to listen for incoming connections with a timeout
- the bind IP should be removed and always default to `0.0.0.0`
- the port should be stored in the socket factory
- bind issues should be logged but rate limited
Contributor guide
Research direction
Start by locating the ConnectionServer class and the socket factory, then trace how the platform currently schedules connection listening and handles bind failures. Review the surrounding task-scheduler and platform models before deciding how the component should expose incoming sockets. Done means the listed responsibilities are separated, the listen timeout and rate-limited bind logging work, and the port is owned by the socket factory.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- networking
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100