- Newest
- Most votes
- Most comments
For the create event Lambda, add code to add a tag to the object once processed/replicated. For delete event, send the event to SQS first. Subscribe the delete lambda to the queue and only process the delete if the create lambda has added the tag. If it has the create tag, process the delete and delete the message off the queue. You can then adjust the visibility timeout on the queue to give the create time finish.
This gave me a great idea and will be used to solution the problem. Thanks for taking the time to respond!
Have you looked at Same Region and Cross Region Replication to accomplish keeping the buckets in sync?
https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html
Thanks for the reply. Yes, however, Same Region and Cross Region Replication require versioning turned on which is incompatible when the bucket is the target of a DMS Migration Task endpoint, according to this documentation-> https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.S3.html
Relevant content
- Accepted Answerasked 2 years ago
- asked 2 years ago
- Why is no data migrated from my Amazon S3 source endpoint even though my AWS DMS task is successful?AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 8 months ago
- AWS OFFICIALUpdated 9 months ago
Just curious if you have already looked at S3 Same-Region replication?
@Gokul - Thanks for the link. I am sure event order is preserved in the article you posted. This may be an ideal solution; however, we have two small data-transformation in the lambda that will have to be re-factored if we use this solution :(
@Gokul - It appears that versioning has to be enabled on source bucket of S3- Same-Region replication. Versioning is not compatible when a bucket is the target of a dms task. The DMS documents for S3 endpoints state "Don’t enable versioning for S3".