Opened 4 weeks ago

#2642 new defect

UDP transport: add(peer, 0) from ACK logic does not work, state blocked

Reported by: jogger Owned by: zzz
Priority: major Milestone: undecided
Component: router/transport Version: 0.9.42
Keywords: Cc:
Parent Tickets: Sensitive: no

Description

If locked_shouldSend() once returns NO_BW, it has set a nextSendTime for the state. Until that time has come due the state remains blocked for repeated calls with ShouldSend?.NO.

This completely defeats the add(peer, 0) from the ACK logic waking up packet pusher that intends to let this peer go right away freeing up its send window.

Quick fix would be to let locked_shouldSend also try all states with zero pushcount. However this would add additional statements to the hot path as long as we still use round robin.

Subtickets

Change History (0)

Note: See TracTickets for help on using tickets.