Closed myzhang1029 closed 5 months ago
Attention: Patch coverage is 96.29630%
with 1 lines
in your changes are missing coverage. Please review.
Project coverage is 78.44%. Comparing base (
27017d6
) to head (f440a89
). Report is 1 commits behind head on main.
Files | Patch % | Lines |
---|---|---|
src/mux/stream.rs | 96.00% | 1 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
This temporary workaround allows the task to linger even if the receiving side closes the websocket connection. Might allow DoS.
Can confirm this fix does not have the same problem as the workaround.
Edit: This is not #30 but a different problem.
In the current implementation, if one task calls
poll_write
and get aPending
, then later a different task gets anotherPending
, then the first task will not be waken up. Judging fromtokio::net::TcpStream
, it seems that this is an incorrect implementation ofAsyncWrite
--- Despite that this does not really matter in our use case, since anyMuxStream
will only be poll_wrote by one task.Examine tokio-rs/tokio src/io/poll_evented.rs#L73.