dhananjaykrutika opened a new pull request, #722:
URL: https://github.com/apache/iceberg-go/pull/722

   ExpireSnapshots computes candidate snapshots for deletion at time T1, but by 
the time CommitTable applies the update at T2, a concurrent client might link 
one of these snapshots to a new branch or tag. Without protection, the snapshot 
is deleted and its new ref is silently cleaned up.
   
   This change adds a SkipIfReferenced flag to removeSnapshotsUpdate. When set, 
Apply() filters out any snapshot that is still referenced before calling 
RemoveSnapshots(). ExpireSnapshots sets this flag via SetSkipIfReferenced().
   
   The default behavior (SkipIfReferenced=false) is unchanged: snapshots are 
removed and orphaned refs are silently cleaned up, preserving backward 
compatibility with explicit client-driven remove-snapshot updates.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to