You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The tower crate was fixed a while ago (tower-rs/tower#476 and tower-rs/tower#480). Both these fixes are before Zebra's pinned git hash of tower.
But we didn't know these bugs were fixed until yesterday, because the tower::Buffer comments were outdated, and the tower::Buffer tests were incomplete.
Since tower is already fixed, this ticket is obsolete.
Is your feature request related to a problem? Please describe.
PeerSet
callspoll_ready
multiple times on its (possibly wrapped)Client
services. This polling is part of its design.However, if these services are ever
Buffer
ed, these polls would fill up theirBuffer
reservations, causing hangs.Describe the solution you'd like
In
peer::peer_set::set::PeerSet::<impl Service>
PeerSet
'sD::Service
typeBuffer
ing ofClient
s at compile-time or runtime, if possible:assert!(!format!("{:?}", service).contains("Buffer"))
inPeerSet::poll_ready
?Describe alternatives you've considered
Do nothing: future changes could cause hangs.
Additional context
See #1593 for background.
The text was updated successfully, but these errors were encountered: