Skip to content

Table Maintenance: Cleanup/Prune Safety and Concurrency Caveats Undocumented (All SDKs) #135

@oqoqo-bot

Description

@oqoqo-bot

Documentation Gap

The LanceDB docs do not document cleanup/prune safety controls, concurrency caveats, or the delete_unverified option across any SDK (Python, TypeScript, Rust).

Description

Table cleanup/prune safety controls, concurrency behavior, and the delete_unverified option are undocumented across all SDKs.

  • All SDKs expose table.optimize() with cleanup/prune and a delete_unverified option, but the docs don't explain these — the 7-day default retention protects in-progress transactions, yet this rationale is only in code docstrings
  • Concurrency behavior is undocumented: concurrent operations typically succeed due to version isolation, but cleanup itself may fail or be conservative when other operations are active
  • Users on Discord are asking whether aggressive cleanup (e.g., cleanupOldVersions(0)) risks data loss — cleanup failures don't risk data loss and retries are safe, but users have no way to know this

How to Validate

Affected Files

  • docs/tables/versioning.mdx
  • docs/lance.mdx
  • rust/lancedb/src/table.rs

Created by Oqoqo

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions