roryqi opened a new pull request, #13778:
URL: https://github.com/apache/gravitino/pull/13778
### What changes were proposed in this pull request?
- Merge the restricted Rego parser from #13478.
- Merge the experimental Iceberg REST service from #13569.
- Resolve tag-selected row-filter and column-mask policies during loadTable.
- Bind policies to the authenticated identity, table schema, and Iceberg
field IDs.
- Add canonical deduplication and conflict detection.
- Add resolved read restrictions to experimental Iceberg load-table
responses.
- Include read-restriction state in load-table ETags.
### Why are the changes needed?
Iceberg REST load-table responses need to carry the read restrictions
selected
through Gravitino effective tags and policies, following the tag-based read
restriction design.
Fix: #13719
### Does this PR introduce _any_ user-facing change?
The experimental Iceberg REST service can return standard read-restrictions
in
load-table responses when applicable policies exist. The stable Iceberg
runtime
remains unchanged when no experimental provider is installed.
### How was this patch tested?
- Added converter tests covering schema and identity binding,
canonicalization,
literals, mask actions, null handling, and fail-closed errors.
- Added loader tests covering effective policy resolution, deduplication,
conflicts, subject binding, and ServiceLoader discovery.
- Added a restriction-aware ETag regression test.
- Ran experimental module tests, Spotless checks, compilation, and Apache
RAT.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]