3659cb9efb
Implemented the Retriever. Unfortunately, it is a fileRetriever and not a byteRetriever. It should be possible to convert this to a byteRetiever, but I got stuck: The conduit sink needs to process individual chunks, but a byteRetriever needs to pass a single L.ByteString to its callback for processing. I looked into using unsafeInerlaveIO to build up the bytestring lazily, but the sink is already operating under conduit's inversion of control, and does not run directly in IO anyway. On the plus side, no more memory leak..
19 lines
650 B
Markdown
19 lines
650 B
Markdown
S3 has memory leaks
|
|
|
|
Sending a file to S3 causes a slow memory increase toward the file size.
|
|
|
|
> This is fixed, now that it uses aws. --[[Joey]]
|
|
|
|
Copying the file back from S3 causes a slow memory increase toward the
|
|
file size.
|
|
|
|
> [[fixed|done]] too! --[[Joey]]
|
|
|
|
The author of hS3 is aware of the problem, and working on it. I think I
|
|
have identified the root cause of the buffering; it's done by hS3 so it can
|
|
resend the data if S3 sends it a 307 redirect. --[[Joey]]
|
|
|
|
At least the send leak should be fixed by the patch in the s3-memory-leak
|
|
branch in git. That needs a patch to hS3, which I have sent to its author.
|
|
--[[Joey]]
|
|
[[!tag confirmed]]
|