Forráskód Böngészése

Merge pull request #121 from overleaf/spd-gcs-byte-range

Fix Filestore returning one-too-many bytes when given a range
Simon Detheridge 6 éve
szülő
commit
59551fc140

+ 0 - 4
services/filestore/app/js/GcsPersistor.js

@@ -115,10 +115,6 @@ async function sendStream(bucketName, key, readStream, sourceMd5) {
 
 async function getFileStream(bucketName, key, _opts = {}) {
   const opts = Object.assign({}, _opts)
-  if (opts.end) {
-    // S3 (and http range headers) treat 'end' as inclusive, so increase this by 1
-    opts.end++
-  }
   const stream = storage
     .bucket(bucketName)
     .file(key)

+ 1 - 1
services/filestore/test/acceptance/deps/Dockerfile.fake-gcs

@@ -1,4 +1,4 @@
-FROM fsouza/fake-gcs-server:1.18.4
+FROM fsouza/fake-gcs-server:latest
 RUN apk add --update --no-cache curl
 COPY healthcheck.sh /healthcheck.sh
 HEALTHCHECK --interval=1s --timeout=1s --retries=30 CMD /healthcheck.sh http://localhost:9090

+ 1 - 1
services/filestore/test/unit/js/GcsPersistorTests.js

@@ -196,7 +196,7 @@ describe('GcsPersistorTests', function() {
       it('passes the byte range on to GCS', function() {
         expect(GcsFile.createReadStream).to.have.been.calledWith({
           start: 5,
-          end: 11 // we increment the end because Google's 'end' is exclusive
+          end: 10
         })
       })
     })