Preserve contextvars context when handle httpclient response#3340
Open
tkukushkin wants to merge 1 commit intotornadoweb:masterfrom
Open
Preserve contextvars context when handle httpclient response#3340tkukushkin wants to merge 1 commit intotornadoweb:masterfrom
tkukushkin wants to merge 1 commit intotornadoweb:masterfrom
Conversation
Member
|
Yes, this should have a test to make sure it doesn't get broken in the future. Something like ContextVarsTest in gen_test.py. I'm a little surprised this is necessary - I had thought that the use of contextvars in the asyncio event loop covered what we needed. I wonder if there are any other callback-oriented interfaces we need to update in tornado. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hello! We use contextvars and write some of them to JSON logs. Sometimes we see error logs
Exception after Future was cancelled. But from the log's context we couldn't find the place where it occured, only that it was related to tornado httpclient. After debugging, we noticed, that this log might be written with context of other tasks that also make HTTP requests. This PR is addressed to fix this issue.I'm not sure if any tests are needed here, but I can try to add if you think they are.