Skip to content

Do not archive a duplicate when a write reuses the live generation - #2323

Open
gaul wants to merge 1 commit into
fsouza:mainfrom
gaul:update-in-place
Open

Do not archive a duplicate when a write reuses the live generation#2323
gaul wants to merge 1 commit into
fsouza:mainfrom
gaul:update-in-place

Conversation

@gaul

@gaul gaul commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

PatchObject and the ACL handlers persist through CreateObject carrying the object's existing generation. On a versioning-enabled bucket every such metadata update archived a copy of the live object under the same generation it still holds, so a single ACL change made a versioned listing show two entries sharing an id. A write that reuses the live generation now replaces it in place; only a write that changes the generation archives the old one, matching Cloud Storage, where a metadata update bumps the metageneration alone.

PatchObject and the ACL handlers persist through CreateObject carrying
the object's existing generation.  On a versioning-enabled bucket every
such metadata update archived a copy of the live object under the same
generation it still holds, so a single ACL change made a versioned
listing show two entries sharing an id.  A write that reuses the live
generation now replaces it in place; only a write that changes the
generation archives the old one, matching Cloud Storage, where a
metadata update bumps the metageneration alone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant