Fix stalls in S3 when transferring encrypted data.
Stalls were caused by code that did approximatly: content' <- liftIO $ withEncryptedContent cipher content return store content' The return evaluated without actually reading content from S3, and so the cleanup code began waiting on gpg to exit before gpg could send all its data. Fixing it involved moving the `store` type action into the IO monad: liftIO $ withEncryptedContent cipher content store Which was a bit of a pain to do, thank you type system, but avoids the problem as now the whole content is consumed, and stored, before cleanup.
This commit is contained in:
parent
1687fecd33
commit
a441e08da1
4 changed files with 50 additions and 34 deletions
|
@ -5,3 +5,5 @@ dialup.
|
|||
There was a similar issue with bup, which I fixed by forking a process
|
||||
rather than using a thread to do some IO. Probably need the same here.
|
||||
--[[Joey]]
|
||||
|
||||
[[done]] --[[Joey]]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue