Skip to content

Commit 49f9a88

Browse files
Merge pull request #162 from islue/s3_multipart
MultiPartUpload.get_all_parts return 1,000 multipart uploads max
2 parents 3a4ce7e + 5d5a7c6 commit 49f9a88

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

conf/mongodb-consistent-backup.example.conf

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ production:
5555
# bucket_name: [AWS S3 Bucket Name]
5656
# bucket_prefix: [prefix] (default: /)
5757
# threads: [1+] (default: 1 per CPU)
58+
# chunk_size_mb: [1+] (default: 50)
5859
# secure: [true|false] (default: true)
5960
# retries: [1+] (default: 5)
6061
# acl: [acl_str] (default: none)

mongodb_consistent_backup/Upload/S3/S3.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import os
22
import logging
33

4+
import boto.s3.multipart
45
from copy_reg import pickle
56
from math import ceil
67
from multiprocessing import Pool
@@ -102,7 +103,10 @@ def run(self):
102103
self._pool.close()
103104
self._pool.join()
104105

105-
if len(self._multipart.get_all_parts()) == chunk_count:
106+
part_count = 0
107+
for part in boto.s3.multipart.part_lister(self._multipart):
108+
part_count += 1
109+
if part_count == chunk_count:
106110
self._multipart.complete_upload()
107111
key = self.bucket.get_key(key_name)
108112
if self.s3_acl:

0 commit comments

Comments
 (0)