-
Notifications
You must be signed in to change notification settings - Fork 34
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
s3_get_file
usage of BufferStream
breaks AWS.jl
error handling
#249
Comments
@omus do you think it would be safe to switch to an IOBuffer instead? Or is there another way to use the new response type to avoid BufferStream? I don't know much about the new thing. |
Here's an example error:
|
Proposal here to just support |
Fixed upstream |
Hi!
We've run into an issue where an
HTTP.StatusError
generated by https://github.com/JuliaCloud/AWS.jl/blob/master/src/AWSExceptions.jl#L59-L63 is getting clobbered by an exception becauseseekstart
(https://github.com/JuliaCloud/AWS.jl/blob/master/src/AWSExceptions.jl#L60) is undefined on aBufferStream
.From what I can tell,
AWS.jl
currently expects this to break, as they warn against using an<:IO
that doesn't support seeking: https://github.com/JuliaCloud/AWS.jl/blob/master/src/utilities/request.jl#L69-L70BufferStream
s are used inAWSS3.jl
ins3_get_file
: https://github.com/JuliaCloud/AWSS3.jl/blob/master/src/AWSS3.jl#L177 callss3_get
, which creates aBufferStream
in turn: https://github.com/JuliaCloud/AWSS3.jl/blob/master/src/AWSS3.jl#L128.I'm not sure whether the better plan of attack is to
BufferStream
upstream (either by providing another overload or at wrapping the exception generation code in atry catch
or something similar — Add failsafe when exception processing fails AWS.jl#478 advocates for this), or toBufferStream
in this library — but then I'm not sure how you'd implements3_get file
.Help much appreciated!
PS: I'll file a similar issue over at AWS.jl, will add the link here. Edit: JuliaCloud/AWS.jl#545
The text was updated successfully, but these errors were encountered: