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

Handle IIS OnCompleted callbacks later #17756

Merged
merged 2 commits into from
Dec 11, 2019
Merged

Handle IIS OnCompleted callbacks later #17756

merged 2 commits into from
Dec 11, 2019

Conversation

Tratcher
Copy link
Member

#17268 IIS doesn't unblock the end of a response until PostCompletion is called. I've refactored here so that PostCompletion gets called after all things that modify the response but before the OnCompleted callbacks get fired.

I couldn't see how to write an automated test for this since OnCompleted is intentionally not supposed to have observable side-effects on the client.

@Tratcher Tratcher added feature-iis Includes: IIS, ANCM area-servers labels Dec 10, 2019
@Tratcher Tratcher added this to the 5.0.0-preview1 milestone Dec 10, 2019
@Tratcher Tratcher self-assigned this Dec 10, 2019
@halter73
Copy link
Member

I couldn't see how to write an automated test for this since OnCompleted is intentionally not supposed to have observable side-effects on the client.

Can't you write a regression test that verifies that the client now gets a complete response despite an OnCompleted callback that blocks indefinitely? The bug was that the was an observable side-effect on the client.

@Tratcher
Copy link
Member Author

Can't you write a regression test that verifies that the client now gets a complete response despite an OnCompleted callback that blocks indefinitely? The bug was that the was an observable side-effect on the client.

Added. I was worried that would prevent the server from shutting down, but it doesn't.

@Tratcher Tratcher merged commit 11ecc62 into master Dec 11, 2019
@Tratcher Tratcher deleted the tratcher/iiscomplete branch December 11, 2019 19:26
Tratcher added a commit that referenced this pull request May 5, 2020
Tratcher added a commit that referenced this pull request May 6, 2020
@amcasey amcasey added area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions and removed area-runtime labels Jun 2, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area-networking Includes servers, yarp, json patch, bedrock, websockets, http client factory, and http abstractions feature-iis Includes: IIS, ANCM
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants