sachinnn99 opened a new pull request, #10785: URL: https://github.com/apache/gravitino/pull/10785
### What changes were proposed in this pull request? Add first-class support for configuring an S3 proxy endpoint in the Iceberg REST catalog. The new Gravitino property `s3-proxy-endpoint` maps to Iceberg's `http-client.proxy-endpoint` (`HttpClientProperties.PROXY_ENDPOINT`), allowing clients like Spark and Flink behind an HTTP proxy to fetch proxy settings from the catalog configuration. ### Why are the changes needed? Users behind an HTTP proxy cannot configure S3 proxy settings through the Iceberg REST catalog. While the `gravitino.bypass.` mechanism can pass arbitrary properties, a first-class managed property provides a consistent experience alongside existing S3 properties like `s3-endpoint`, `s3-region`, and `s3-path-style-access`. Fix: #10765 ### Does this PR introduce _any_ user-facing change? Yes. Adds a new optional catalog property: | Gravitino property | Iceberg property | Description | |---|---|---| | `s3-proxy-endpoint` | `http-client.proxy-endpoint` | The proxy endpoint for S3 requests, e.g. `http://proxy-host:8080` | ### How was this patch tested? - Added unit test in `TestIcebergPropertiesUtils` for the property mapping - Added proxy endpoint to `IcebergRestTestUtil` test catalog config - Updated `TestIcebergConfig.testConfigWithValidWarehouse` to verify proxy endpoint in REST config response - Updated `TestCatalogWrapperForREST` to verify proxy endpoint passes through client config filtering - All existing tests pass: `./gradlew :catalogs:catalog-common:test :iceberg:iceberg-rest-server:test :catalogs:catalog-lakehouse-iceberg:test -PskipITs` -- 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]
