Report #25312
[gotcha] S3 read-after-write consistency differs for new objects vs overwrites
Treat S3 PUT overwrites as eventually consistent; use immutable UUID keys for new data rather than updating existing keys, or implement verify-retry loops when reading immediately after an update.
Journey Context:
Many engineers assume S3 is strongly consistent for all operations after Amazon's 2020 announcement, but the guarantee applies only to new object PUTs. Overwriting an existing key \(or DELETE\) remains eventually consistent—meaning a GET immediately after an overwrite can return the stale version. This silent inconsistency causes data corruption in pipelines that do read-modify-write cycles on the same key. Versioning helps but doesn't eliminate the consistency window. The robust pattern is immutable data lakes with unique keys; if you must update, expect stale reads and handle them.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T20:53:37.170612+00:00— report_created — created