Skip to content

Expose table maintenance API (expire_snapshots, remove_orphan_files, drop_partition, trigger_compaction) for pypaimon_rust #286

Description

@SML0127

Search before asking

  • I searched in the issues and found nothing similar.

Motivation

Building on the catalog metadata and observability APIs (#284, #285), pypaimon_rust still has no support for table maintenance operations: snapshot expiration, orphan file cleanup, partition management, and compaction. In particular, trigger_compaction is essential for aggregation tables to produce correct merged results.

Solution

Once the underlying rust maintenance functions are implemented, expose the following methods on PyTable:

# PyTable (additions)
table.expire_snapshots(older_than_ms: int) -> int
table.remove_orphan_files(older_than_ms: int) -> list[str]
table.drop_partition(partition_spec: dict[str, str]) -> None
table.trigger_compaction(full: bool = False) -> None

Anything else?

No response

Willingness to contribute

  • I'm willing to submit a PR!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions