Skip to content

[EPIC] TMS: Persistence, scheduler, and in-job Spark path #13760

Open
0 of 1 issue completed
Open

Description

@lasdf1234

Describe the proposal

Implement the persistence and in-job execution foundation for the in-process Table Maintenance Service (TMS) as a plugins/tms module (same SPI / mapper packaging pattern as idp-basic, not in core), including the policy-content schema previously tracked under #13764.

This epic delivers:

  • Typed TMS execution peers on Iceberg maintenance policy content (timeTrigger, commitTrigger, minIntervalMs, jobOptions, updaterOptions) with validation, SerDe / REST round-trip, docs, and nearest-policy / minIntervalMs resolution
  • Relational DDL and DAOs for scheduled_tasks (db-scheduler), table_maintenance_job, and table_snapshot_metrics
  • Three db-scheduler pools (expand / cron / commit), soft-slot occupancy claim storage, REST Feature lifecycle, and OccupancyGate
  • In-Spark Job gates: sample metrics at snapshot S0, snapshot-drift early exit, and recommender maintain/skip
  • Cluster-static gravitinoAuth / ircAuth bags from gravitino.conf, overlaid at runJob — not stored in policy content
  • Execution of four maintenance types (compaction, manifest-rewrite, snapshot-expiry, orphan-cleanup) inside Spark Jobs
  • Commit-chain runs with Iceberg OCC (validateFromSnapshot) and validation metrics

Design: apache/gravitino#13386. Related: apache/gravitino#13488. Policy-content epic #13764 is merged into this list and closed.

Task list

Ordered by dependency: policy content/schema first, then persistence/scheduler, then in-job path.

Policy content schema (from #13764)

Persistence, scheduler, and in-job Spark path

Activity

  1. self-assigned this
    on Oct 12, 2026
  2. lasdf1234 commented on Oct 12, 2026

    @lasdf1234
    CollaboratorAuthor

    Tracking second subtask: #13773 (PR stacked on #13762).

  3. lasdf1234 commented on Oct 12, 2026

    @lasdf1234
    CollaboratorAuthor

    Tracking third subtask: #13777 (PR stacked on #13773 / fork #62).

  4. added 2 commits that reference this issue on Oct 13, 2026
  5. lasdf1234 commented on Oct 14, 2026

    @lasdf1234
    CollaboratorAuthor

    Note: #13777 and #13816 are being delivered together in #13841 (~1.1k LOC).

  6. lasdf1234 commented on Oct 14, 2026

    @lasdf1234
    CollaboratorAuthor

    Updated the task list: #13777 and #13816 are tracked as one delivery item via PR #13841. Both issues remain open until that PR merges (`Fix:` lines cover both).

  7. added a commit that references this issue on Oct 15, 2026
  8. added a commit that references this issue on Oct 16, 2026
  9. added a commit that references this issue on Oct 20, 2026
  10. lasdf1234 commented on Oct 20, 2026

    @lasdf1234
    CollaboratorAuthor

    Tracking expand-handler subtask: #13984 (depends on #13983 / PR #13897).

  11. added a commit that references this issue on Oct 21, 2026
  12. 20 remaining items

  13. added 15 commits that reference this issue on Oct 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

2.0.0Release v2.0.0epicKey feature

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions