-
Notifications
You must be signed in to change notification settings - Fork 181
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
Remove uses of at-async in favor of at-spawn #1039
Conversation
Codecov Report
@@ Coverage Diff @@
## master #1039 +/- ##
==========================================
- Coverage 85.59% 85.24% -0.35%
==========================================
Files 32 32
Lines 3020 3023 +3
==========================================
- Hits 2585 2577 -8
- Misses 435 446 +11
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
Tests currently failing until JuliaServices/ConcurrentUtilities.jl#22 is merged and tagged. |
…on" cooperating tasks to be sticky to the thread that is running them or the parent's task's thread.
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.
Looks good to me:) I think the @async -> @spawn
changes are not the most complicated, it's more the switch to OpenSSL and the changes to exception handling which are more difficult to access. But since these are all based on your experiments with large workload, I believe they'll make nice improvements in terms of performance and log deduplication.
@@ -10,14 +10,15 @@ using ..IOExtras, ..Messages, ..Exceptions | |||
Throw a `StatusError` if the request returns an error response status. | |||
""" | |||
function exceptionlayer(handler) | |||
return function exceptions(stream; status_exception::Bool=true, logerrors::Bool=false, kw...) | |||
res = handler(stream; logerrors=logerrors, kw...) | |||
return function exceptions(stream; status_exception::Bool=true, timedout=nothing, logerrors::Bool=false, logtag=nothing, kw...) |
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.
IIUC, timedout
kwarg is strictly internal thing, the user shouldn't provide their own TimedOut
struct to a HTTP.get
? If that is the case, we might want to call it _timedout
just to make it clearer that this is an internal thing.
#1038