JunRuiLee opened a new pull request, #489:
URL: https://github.com/apache/paimon-rust/pull/489

   > **Stacked on #487** — this branch builds on 
`feat/global-index-drop-lumina-vindex`. Until #487 merges, the diff below also 
shows #487's commits; it will narrow to just the dry_run commit once #487 is 
merged. Kept as **draft** until then.
   
   ## Purpose
   
   Add `dry_run` to `drop_global_index`, matching Java's 
[#8309](https://github.com/apache/paimon/pull/8309). A dry run reports how many 
global index files a drop *would* remove, committing nothing — a safety preview 
before the irreversible metadata commit. Because it lives in the shared 
`GlobalIndexDropBuilder`, it covers all supported types 
(btree/bitmap/lumina/vindex) in one change.
   
   ## Changes
   
   - `GlobalIndexDropBuilder`: new `with_dry_run(bool)`; `execute()` still 
returns the matched count (`usize`), but on dry-run short-circuits **before** 
the commit, so nothing is written. The non-dry-run path is unchanged.
   - `sys.drop_global_index`: parses the `dry_run` arg (`true`/`false`, 
case-insensitive; invalid → error), and on dry-run returns `Would drop N global 
index file(s)` instead of committing.
   
   ## Out of scope
   
   `partitions` remains `NotImplemented` (separate follow-up).
   
   ## Tests
   
   - Builder: dry-run returns the matched count and leaves the index entry in 
place (no commit), then a real drop removes it; dry-run with no match returns 0.
   - Procedure: `drop_global_index(... dry_run => true)` leaves 
`$table_indexes` unchanged, then a real drop empties it; invalid `dry_run` 
value is rejected.


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