3

I need to copy an object between two S3 buckets in different regions. The object is large enough that amazonica.aws.s3/copy-object fails with the following:

AmazonS3Exception The specified copy source is larger than the maximum allowable size for a copy source: 5368709120 (Service: Amazon S3; Status Code: 400; Error Code: InvalidRequest; Request ID: 3481F664EA2F784A)

So I'm trying to use amazonica.aws.s3transfer/copy, calling it with four arguents (source bucket name, source key name, destination bucket name, and destination key name). It immediately returns with {}. I had expected the map it returns to have a :wait-for-completion key, mapping to a function that I can call to wait for the copy operation to finish; after all, that is how s3transfer/upload works.

How can I tell when the copy operation has finished? Is there a way, other than polling the destination bucket periodically to see when the object appears?

Vebjorn Ljosa
  • 17,438
  • 13
  • 70
  • 88

0 Answers0