From cc7ad2171c549c1dd7039b82e27978377c929d02 Mon Sep 17 00:00:00 2001 From: Mark Tse Date: Sat, 19 Aug 2017 11:42:13 -0400 Subject: [PATCH] S3 - adding note about consistency around the list operation. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a8078d1..5257313 100644 --- a/README.md +++ b/README.md @@ -715,6 +715,7 @@ S3 - The uncertainty lies with *when* your clients and other clients see updates. - **New objects:** If you create a new object, you’ll be able to read it instantly, which is called **read-after-write consistency**. - Well, with the additional caveat that if you do a read on an object before it exists, then create it, [you get eventual consistency](https://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html#ConsistencyModel) (not read-after-write). + - This does not apply to any list operations; newly created objects are [not guaranteed to appear in a list operation right away](https://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html#ConsistencyModel) - **Updates to objects:** If you overwrite or delete an object, you’re only guaranteed **eventual consistency**, i.e. the change will happen but you have no guarantee of when. - 🔹For many use cases, treating S3 objects as **immutable** (i.e. deciding by convention they will be created or deleted but not updated) can greatly simplify the code that uses them, avoiding complex state management. - 🔹Note that [until 2015](https://aws.amazon.com/about-aws/whats-new/2015/08/amazon-s3-introduces-new-usability-enhancements/), 'us-standard' region had had a weaker eventual consistency model, and the other (newer) regions were read-after-write. This was finally corrected — but watch for many old blogs mentioning this!