Skip to content

fix(python): added cleanup_frag_reuse_index#7221

Open
gstamatakis95 wants to merge 1 commit into
lance-format:mainfrom
gstamatakis95:feat/python-cleanup-frag-reuse-index
Open

fix(python): added cleanup_frag_reuse_index#7221
gstamatakis95 wants to merge 1 commit into
lance-format:mainfrom
gstamatakis95:feat/python-cleanup-frag-reuse-index

Conversation

@gstamatakis95

Copy link
Copy Markdown
Contributor

Closes #7220

Expose the existing Rust frag-reuse pruner to Python as LanceDataset.cleanup_frag_reuse_index().

Deferred-remap compaction appends a generation to the __lance_frag_reuse index on every commit, and without pruning these accumulate forever and are loaded on every vector index open. The race-safe pruner from #3836 already exists in Rust but had no Python binding and is never invoked automatically.

The binding follows the migrate_manifest_paths_v2 wrapper pattern, the Python method is documented beside cleanup_old_versions as a periodic maintenance call, and a new test verifies that __lance_frag_reuse reports zero versions once all indexes have caught up and the cleanup runs.

@github-actions github-actions Bot added A-python Python bindings bug Something isn't working labels Jun 10, 2026
@gstamatakis95 gstamatakis95 force-pushed the feat/python-cleanup-frag-reuse-index branch from f2eaabb to d90747b Compare June 10, 2026 22:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-python Python bindings bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

No Python API to prune frag-reuse generations, so deferred-remap users accumulate read-path debt forever

1 participant