apache/gravitino

[Subtask] Support policies for function metadata objects

Aberta

#12.501 aberto em 18 de ago. de 2026

 (2 comentários) (0 reação) (0 responsável)Java (887 forks)auto 404
good first issuesubtask

Métricas do repositório

Stars
 (3.058 estrelas)
Métricas de merge de PR
 (Mesclagem média 6d 6h) (148 fundiu PRs em 30d)

Description

Describe the subtask

Support associating policies with FUNCTION metadata objects through the existing metadata object policy REST APIs.

Currently, FUNCTION exists in MetadataObject.Type, but it is excluded from PolicyManager.SUPPORTED_METADATA_OBJECT_TYPES_FOR_POLICIES. As a result, policy association requests for functions are rejected with Cannot associate policies for unsupported metadata object type FUNCTION.

Implementation scope:

  • Add FUNCTION to the supported metadata object types in PolicyManager.
  • Clean up function policy relations when a function is dropped.
  • Extend catalog and schema cascade cleanup for function policy relations across H2, MySQL, and PostgreSQL.
  • Update docs/open-api/policies.yaml to include FUNCTION.
  • Add unit and integration tests covering policy association, listing, retrieval, removal, direct function deletion, and cascade cleanup.

The completed function tag implementation in #11844 and #11897 can be used as a reference.

This task covers the server, core relational storage, OpenAPI, and their tests. Typed Java and Python client APIs can be handled in follow-up issues.

This task extends the current direct object-policy model and does not implement the policy-on-tag model proposed in #12176.

Parent issue

#6158

Guia do colaborador