Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unexpected QuicStream.WriteAsync exception #82523

Closed
bentoi opened this issue Feb 23, 2023 · 3 comments · Fixed by #90253
Closed

Unexpected QuicStream.WriteAsync exception #82523

bentoi opened this issue Feb 23, 2023 · 3 comments · Fixed by #90253
Assignees
Milestone

Comments

@bentoi
Copy link

bentoi commented Feb 23, 2023

Description

QuicStream.WriteAsync can throw if the remote stream is disposed after reading the data. I don't expect WriteAsync to throw if the data is successfully sent.

Reproduction Steps

Run the attached test case: quicwriteexception.zip

Expected behavior

No exception.

Actual behavior

WriteAsync raises System.Net.Quic.QuicException: Stream aborted by peer (0).

Regression?

No response

Known Workarounds

No response

Configuration

DotNet 7.0.100

Other information

No response

@ghost ghost added the untriaged New issue has not been triaged by the area owner label Feb 23, 2023
@ghost
Copy link

ghost commented Feb 23, 2023

Tagging subscribers to this area: @dotnet/ncl
See info in area-owners.md if you want to be subscribed.

Issue Details

Description

QuicStream.WriteAsync can throw if the remote stream is disposed after reading the data. I don't expect WriteAsync to throw if the data is successfully sent.

Reproduction Steps

Run the attached test case: quicwriteexception.zip

Expected behavior

No exception.

Actual behavior

WriteAsync raises System.Net.Quic.QuicException: Stream aborted by peer (0).

Regression?

No response

Known Workarounds

No response

Configuration

DotNet 7.0.100

Other information

No response

Author: bentoi
Assignees: -
Labels:

untriaged, area-System.Net.Quic

Milestone: -

@CarnaViire
Copy link
Member

Triage: I was able to reproduce it (though I had to wait for some time before that happened).
We need to fix it in 8.0.
Seems to be part of a group of issues around S.N.Quic's ResettableValueTaskSource (Cancellation, Reads/WritesClosed and disposal order/behavior).

@CarnaViire CarnaViire added this to the 8.0.0 milestone Mar 9, 2023
@ghost ghost removed the untriaged New issue has not been triaged by the area owner label Mar 9, 2023
@ManickaP
Copy link
Member

I think this is similar to this test issue: #81944

@ghost ghost added the in-pr There is an active PR which will close this issue when it is merged label Aug 12, 2023
@karelz karelz modified the milestones: 8.0.0, 9.0.0 Aug 14, 2023
@ghost ghost removed the in-pr There is an active PR which will close this issue when it is merged label Sep 13, 2023
@ghost ghost locked as resolved and limited conversation to collaborators Oct 13, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants