lasdf1234 opened a new pull request, #12458:
URL: https://github.com/apache/gravitino/pull/12458
### What changes were proposed in this pull request?
Add an explicit resolved-properties API so connectors and REST services can
obtain catalog/schema/fileset properties with secret URNs resolved to
plaintext, without changing default `loadCatalog` omit behavior.
- Core: `SecretPropertyUtils.buildResolvedProperties` + dispatcher
`load*ResolvedProperties`
- REST: `GET .../properties?view=resolved` for catalog/schema/fileset +
`PropertyMapResponse`
- OpenAPI, Java/Python clients
- Wire Spark/Flink/Trino/Lance/Iceberg consumers to use resolved properties
- Design doc for plaintext property delivery
### Why are the changes needed?
Fix: #12457
Entity secrets (epic #12297) persist URNs in properties; default HTTP load
omits those keys. Connectors and Lance/IRC need plaintext for connection config
without weakening the safe default load path or duplicating credential vending.
### Does this PR introduce _any_ user-facing change?
- New endpoints: `GET .../catalogs/{c}/properties?view=resolved` (and
schema/fileset siblings)
- New client methods: `loadCatalogResolvedProperties` /
`loadSchemaResolvedProperties` / `loadFilesetResolvedProperties`
- Default `loadCatalog().properties()` semantics unchanged
### How was this patch tested?
- `./gradlew :core:test --tests
'org.apache.gravitino.secret.TestSecretPropertyUtils' :common:compileJava
:server:compileJava :clients:client-java:compileJava -PskipITs`
- Server REST unit tests for catalog/schema/fileset resolved-properties
endpoints
- Connector / Lance / Iceberg compile checks
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]