3 ms·
The lack of If-Match/If-None-Match preconditions in S3 is definitely frustrating.
by laurencerowe 2y ago
The lack of If-Match/If-None-Match preconditions in S3 is definitely frustrating.
- loevborg 2y agoThis or some other way of CAS would enable so many useful applications, like a simple mutex based on an S3 object.
- DaiPlusPlus 2y agoContent-Addressable-Storage? You can do that yourself: just use the hash of an S3 object as its name, and mark the object as immutable.
- wiml 2y agoUntil recently, S3 had an eventual-consistency model (a given file/object would be internally consistent, but different readers would see creations/deletions/etc in different orders). It's favoring availability over consistency. Using file operations for mutexes makes sense in Unix because of the filesystem semantics there but it makes less sense in a distributed object store.
- jameshart 2y agoS3 has had read-after-write strong consistency since 2020, so... yeah, I guess that's still 'recently', given that S3 existed for 14 years prior to that with eventual consistency.
- nathants 2y agothat was when it rolled out to all regions. prior to that it existed in a single region only. not sure when that initially rolled out.
- klodolph 2y agoCAS (or If-Match, If-None-Match) is something that is atomic but localized to a single key. You don’t have to provide any additional consistency guarantees beyond what S3 already provides. You are providing a couple new atomic operation with the same radius as existing operations—everything is already atomic on a single key, you’re just adding conditions to those operations.