lasdf1234 opened a new pull request, #13766:
URL: https://github.com/apache/gravitino/pull/13766

   ### What changes were proposed in this pull request?
   
   - Add TMS policy content model (`schedule`, `minIntervalMs`, `jobOptions`) 
with validation (including sensitive option key checks) for Iceberg compaction 
policy content.
   - Extend `IcebergDataCompactionContent` / `PolicyContents` / 
`PolicyContentDTO` / `DTOConverters` so TMS fields round-trip through REST.
   - Validate maintenance fields on policy create/alter in `PolicyManager`.
   - Document optional fields in OpenAPI and `iceberg-compaction-policy.md`.
   
   Nearest-policy / `minIntervalMs` resolution is a follow-up subtask.
   
   Epic: #13764 · Subtask: #13765 · Design: #13386
   
   ### Why are the changes needed?
   
   Foundation for Table Maintenance Service: typed maintenance fields on 
policies before scheduler/runtime work.
   
   ### Does this PR introduce _any_ user-facing change?
   
   1. Optional JSON fields on Iceberg compaction policy content: `schedule`, 
`minIntervalMs`, `jobOptions`.
   2. Policy create/alter rejects invalid maintenance fields and 
credential-shaped option keys.
   
   ### How was this patch tested?
   
   ```bash
   ./gradlew :api:test --tests 'org.apache.gravitino.maintenance.policy.*' \
     :common:test --tests 'org.apache.gravitino.dto.policy.TestPolicyDTO' \
     -PskipITs
   ./gradlew :docs:build
   ```
   
   Made with [Cursor](https://cursor.com)


-- 
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]

Reply via email to