Răsfoiți Sursa

Use large upload chunks

Simon Detheridge 6 ani în urmă
părinte
comite
5adfb3e2c0

+ 1 - 1
services/filestore/app/js/S3Persistor.js

@@ -96,7 +96,7 @@ async function sendStream(bucketName, key, readStream, sourceMd5) {
     }
     }
 
 
     const response = await _getClientForBucket(bucketName)
     const response = await _getClientForBucket(bucketName)
-      .upload(uploadOptions)
+      .upload(uploadOptions, { partSize: 100 * 1024 * 1024 })
       .promise()
       .promise()
     const destMd5 = _md5FromResponse(response)
     const destMd5 = _md5FromResponse(response)
 
 

+ 6 - 0
services/filestore/test/unit/js/S3PersistorTests.js

@@ -460,6 +460,12 @@ describe('S3PersistorTests', function() {
         })
         })
       })
       })
 
 
+      it('should upload files in a single part', function() {
+        expect(S3Client.upload).to.have.been.calledWith(sinon.match.any, {
+          partSize: 100 * 1024 * 1024
+        })
+      })
+
       it('should meter the stream', function() {
       it('should meter the stream', function() {
         expect(Stream.pipeline).to.have.been.calledWith(
         expect(Stream.pipeline).to.have.been.calledWith(
           ReadStream,
           ReadStream,