Fix size calculation of parts in listIncompleteUploads (#31)

This commit is contained in:
Krishnan Parthasarathi 2017-03-15 19:17:48 +05:30 committed by Aditya Manthramurthy
parent 843fd6123b
commit a78d2bf39a
2 changed files with 5 additions and 4 deletions

View File

@ -17,6 +17,7 @@
module Network.Minio.ListOps where module Network.Minio.ListOps where
import qualified Data.Conduit as C import qualified Data.Conduit as C
import qualified Data.Conduit.Combinators as CC
import qualified Data.Conduit.List as CL import qualified Data.Conduit.List as CL
import Lib.Prelude import Lib.Prelude
@ -55,9 +56,9 @@ listIncompleteUploads bucket prefix recurse = loop Nothing Nothing
nextKeyMarker nextUploadIdMarker nextKeyMarker nextUploadIdMarker
aggrSizes <- lift $ forM (lurUploads res) $ \((uKey, uId, _)) -> do aggrSizes <- lift $ forM (lurUploads res) $ \((uKey, uId, _)) -> do
lPartsResult <- listIncompleteParts' bucket uKey uId Nothing Nothing partInfos <- listIncompleteParts bucket uKey uId C.$$ CC.sinkList
return $ foldl (\sizeSofar p -> opiSize p + sizeSofar) 0 return $ foldl (\sizeSofar p -> opiSize p + sizeSofar) 0
$ lprParts lPartsResult $ partInfos
CL.sourceList $ CL.sourceList $
map (\((uKey, uId, uInitTime), size) -> map (\((uKey, uId, uInitTime), size) ->
@ -65,7 +66,7 @@ listIncompleteUploads bucket prefix recurse = loop Nothing Nothing
) $ zip (lurUploads res) aggrSizes ) $ zip (lurUploads res) aggrSizes
when (lurHasMore res) $ when (lurHasMore res) $
loop nextKeyMarker nextUploadIdMarker loop (lurNextKey res) (lurNextUpload res)
-- | List object parts of an ongoing multipart upload for given -- | List object parts of an ongoing multipart upload for given

View File

@ -54,7 +54,7 @@ module Network.Minio.S3API
, abortMultipartUpload , abortMultipartUpload
, ListUploadsResult , ListUploadsResult
, listIncompleteUploads' , listIncompleteUploads'
, ListPartsResult , ListPartsResult(..)
, listIncompleteParts' , listIncompleteParts'
-- * Deletion APIs -- * Deletion APIs