Skip to content

Fix silent stream stalls and permanent data loss#3

Open
RestartFU wants to merge 0 commit into
CarsonLenze:mainfrom
RestartFU:fix/stream-stalls
Open

Fix silent stream stalls and permanent data loss#3
RestartFU wants to merge 0 commit into
CarsonLenze:mainfrom
RestartFU:fix/stream-stalls

Conversation

@RestartFU

Copy link
Copy Markdown

Three receive/retransmit fixes: flush parked frames after Read drains the buffer (streams stalled forever with an idle sender), stop acking packets the receive window then drops (permanent data loss), and close the connection when retransmission attempts are exhausted instead of silently dropping a reliable packet. Tests pass.

- stream.go: flush parked reorder-queue frames after Read drains the buffer
- connection.go/receive_queue.go: stop acknowledging packets that are then
  dropped by the receive window (ack-then-drop lost data permanently)
- retransmission_queue.go/connection.go: close the connection when a reliable
  packet exhausts retransmission attempts instead of silently dropping it
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant