-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
[HTTP/3] Fixed stress error System.Exception: Completed unexpectedly #72734
[HTTP/3] Fixed stress error System.Exception: Completed unexpectedly #72734
Conversation
Tagging subscribers to this area: @dotnet/ncl Issue DetailsFixed stress error:
consistently happening for GET Aborted.
|
/azp list |
/azp run runtime-libraries stress-http |
Azure Pipelines successfully started running 1 pipeline(s). |
@@ -531,7 +531,6 @@ private unsafe int HandleEventPeerSendShutdown() | |||
} | |||
private unsafe int HandleEventPeerSendAborted(ref PEER_SEND_ABORTED data) | |||
{ | |||
_receiveBuffers.SetFinal(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why this should not be set? I look at the ReceiveBuffers but it is not quite clear to me what this does.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It successfully completes the buffer, propagation of FIN flag. You want to set it only in successful scenarios.
So what happened here is that we would set it here, ReadAsync
would see this, i.e. that it's completed successfully and finish successfully the reading side of the stream, before the following exception could get propagated.
Failures unrelated, stress ran successfully. |
Fixed stress error:
consistently happening for GET Aborted.