thswlsqls opened a new pull request, #17049:
URL: https://github.com/apache/iceberg/pull/17049

   Closes #17047
   
   ## Summary
   
   - `AssumeRoleAwsClientFactory.glue()`/`.kms()` did not apply the 
`glue.endpoint`/`kms.endpoint` overrides configured via `AwsProperties`, unlike 
their `dynamo()` sibling in the same class, which already calls 
`applyMutation(awsProperties::applyDynamoDbEndpointConfigurations)`.
   - `AwsClientFactories.DefaultAwsClientFactory.glue()`/`.kms()` already apply 
these endpoint overrides; this change restores parity for the assume-role code 
path.
   - `LakeFormationAwsClientFactory.kms()` (registered-table branch) had the 
same gap and is fixed the same way; its `glue()` is inherited from 
`AssumeRoleAwsClientFactory` and needed no separate change.
   - `glue.endpoint`/`kms.endpoint` remain no-ops when unset 
(`AwsProperties#configureEndpoint` only calls `endpointOverride()` when the 
property is non-null), so behavior for existing users without these properties 
is unchanged.
   
   ## Testing done
   
   - Added 
`TestAwsClientFactories#testAssumeRoleGlueClientAppliesEndpointOverride`, 
`#testAssumeRoleKmsClientAppliesEndpointOverride` (assert 
`serviceClientConfiguration().endpointOverride()` equals the configured URI), 
and `#testAssumeRoleGlueKmsClientEndpointOverrideIsNoopByDefault` (asserts 
empty override when unset).
   - Added 
`TestLakeFormationAwsClientFactory#testKmsClientAppliesEndpointOverrideForRegisteredTable`,
 stubbing `glue()` with a mocked `GlueClient` to make the registered-table 
branch of `kms()` reachable without Docker/network access.
   - `./gradlew :iceberg-aws:check -x integrationTest` — 225 tests passed 
(integrationTest requires Docker/testcontainers and was not run locally, per 
project convention).
   


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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to