iting0321 opened a new pull request, #5095:
URL: https://github.com/apache/polaris/pull/5095

   <!--
   ๐Ÿ“ Describe what changes you're proposing, especially breaking or user-facing 
changes. 
   ๐Ÿ“– See https://github.com/apache/polaris/blob/main/CONTRIBUTING.md for more.
   -->
   ## Summary
   Implement the 
   ```java
   // TODO: Add a way to create the task entities atomically with dropping the 
entity;
   // in the meantime, if the server fails partway through a dropEntity, it's 
possible that
   // the entity is dropped but we don't have any persisted task records that 
will carry
   // out the cleanup.
   ```
   Entity cleanup currently requires two persistence operations:
     1. Drop the original entity.
     2. Create the cleanup task.
   
   A crash between these operations can leave a dropped resource without a 
cleanup task. This change introduces 
`BasePersistence.deleteEntityAndCreateEntities(...)` so both changes are 
committed or rolled back together.
   
   ## Changes
   Atomically drop entities and create cleanup tasks across TreeMap and JDBC, 
while preserving idempotency. Add rollback tests verifying that task creation 
failures leave the original entity intact and create no new tasks.
   ## Checklist
   - [x] ๐Ÿ›ก๏ธ Don't disclose security issues! (contact [email protected])
   - [x] ๐Ÿ”— Clearly explained why the changes are needed, or linked related 
issues: Fixes #
   - [x] ๐Ÿงช Added/updated tests with good coverage, or manually tested (and 
explained how)
   - [x] ๐Ÿ’ก Added comments for complex logic
   - [ ] ๐Ÿงพ Updated `CHANGELOG.md` (if needed)
   - [ ] ๐Ÿ“š Updated documentation in `site/content/in-dev/unreleased` (if needed)
   


-- 
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]

Reply via email to