diff --git a/polaris-core/src/main/java/org/apache/polaris/core/entity/CatalogEntity.java b/polaris-core/src/main/java/org/apache/polaris/core/entity/CatalogEntity.java index 622df1fca6..a3343c7a04 100644 --- a/polaris-core/src/main/java/org/apache/polaris/core/entity/CatalogEntity.java +++ b/polaris-core/src/main/java/org/apache/polaris/core/entity/CatalogEntity.java @@ -141,6 +141,7 @@ private StorageConfigInfo getStorageInfo(Map internalProperties) .setEndpoint(awsConfig.getEndpoint()) .setStsEndpoint(awsConfig.getStsEndpoint()) .setPathStyleAccess(awsConfig.getPathStyleAccess()) + .setEndpointInternal(awsConfig.getEndpointInternal()) .build(); } if (configInfo instanceof AzureStorageConfigurationInfo) { diff --git a/runtime/service/src/intTest/java/org/apache/polaris/service/it/RestCatalogMinIOSpecialIT.java b/runtime/service/src/intTest/java/org/apache/polaris/service/it/RestCatalogMinIOSpecialIT.java index 9d2f22be7d..b4d171d1b6 100644 --- a/runtime/service/src/intTest/java/org/apache/polaris/service/it/RestCatalogMinIOSpecialIT.java +++ b/runtime/service/src/intTest/java/org/apache/polaris/service/it/RestCatalogMinIOSpecialIT.java @@ -230,6 +230,15 @@ public void testInternalEndpoints() throws IOException { Optional.of(endpoint), false, Optional.of(endpoint))) { + StorageConfigInfo storageConfig = + managementApi.getCatalog(catalogName).getStorageConfigInfo(); + assertThat((AwsStorageConfigInfo) storageConfig) + .extracting( + AwsStorageConfigInfo::getEndpoint, + AwsStorageConfigInfo::getStsEndpoint, + AwsStorageConfigInfo::getEndpointInternal, + AwsStorageConfigInfo::getPathStyleAccess) + .containsExactly("http://s3.example.com", endpoint, endpoint, false); LoadTableResponse loadTableResponse = doTestCreateTable(restCatalog); assertThat(loadTableResponse.config()).containsEntry("s3.endpoint", "http://s3.example.com"); }