From 5a90cc8bd9bd73f065ec21b9b78b0a9fd2b026c1 Mon Sep 17 00:00:00 2001 From: Christopher Lambert <1204398+XN137@users.noreply.github.com> Date: Mon, 28 Jul 2025 10:45:40 +0200 Subject: [PATCH] Simplify BaseMetaStoreManager.extractStorageConfiguration as a static helper method its strongly preferable to not depend on the full `PolarisCallContext` if not necessary. --- .../PolarisEclipseLinkMetaStoreSessionImpl.java | 2 +- .../jdbc/JdbcBasePersistenceImpl.java | 2 +- .../AtomicOperationMetaStoreManager.java | 3 ++- .../core/persistence/BaseMetaStoreManager.java | 17 ++++++++--------- .../TransactionalMetaStoreManagerImpl.java | 3 ++- .../TreeMapTransactionalPersistenceImpl.java | 2 +- 6 files changed, 15 insertions(+), 14 deletions(-) diff --git a/persistence/eclipselink/src/main/java/org/apache/polaris/extension/persistence/impl/eclipselink/PolarisEclipseLinkMetaStoreSessionImpl.java b/persistence/eclipselink/src/main/java/org/apache/polaris/extension/persistence/impl/eclipselink/PolarisEclipseLinkMetaStoreSessionImpl.java index 0981275fdb..cf2e9053b1 100644 --- a/persistence/eclipselink/src/main/java/org/apache/polaris/extension/persistence/impl/eclipselink/PolarisEclipseLinkMetaStoreSessionImpl.java +++ b/persistence/eclipselink/src/main/java/org/apache/polaris/extension/persistence/impl/eclipselink/PolarisEclipseLinkMetaStoreSessionImpl.java @@ -679,7 +679,7 @@ PolarisStorageIntegration createStorageIntegrationInCurrentTxn( PolarisStorageIntegration loadPolarisStorageIntegrationInCurrentTxn( @Nonnull PolarisCallContext callCtx, @Nonnull PolarisBaseEntity entity) { PolarisStorageConfigurationInfo storageConfig = - BaseMetaStoreManager.extractStorageConfiguration(callCtx, entity); + BaseMetaStoreManager.extractStorageConfiguration(callCtx.getDiagServices(), entity); return storageIntegrationProvider.getStorageIntegrationForConfig(storageConfig); } diff --git a/persistence/relational-jdbc/src/main/java/org/apache/polaris/persistence/relational/jdbc/JdbcBasePersistenceImpl.java b/persistence/relational-jdbc/src/main/java/org/apache/polaris/persistence/relational/jdbc/JdbcBasePersistenceImpl.java index c93765c840..8e2f905d6f 100644 --- a/persistence/relational-jdbc/src/main/java/org/apache/polaris/persistence/relational/jdbc/JdbcBasePersistenceImpl.java +++ b/persistence/relational-jdbc/src/main/java/org/apache/polaris/persistence/relational/jdbc/JdbcBasePersistenceImpl.java @@ -1120,7 +1120,7 @@ public void persistStorageIntegratio PolarisStorageIntegration loadPolarisStorageIntegration( @Nonnull PolarisCallContext callContext, @Nonnull PolarisBaseEntity entity) { PolarisStorageConfigurationInfo storageConfig = - BaseMetaStoreManager.extractStorageConfiguration(callContext, entity); + BaseMetaStoreManager.extractStorageConfiguration(callContext.getDiagServices(), entity); return storageIntegrationProvider.getStorageIntegrationForConfig(storageConfig); } diff --git a/polaris-core/src/main/java/org/apache/polaris/core/persistence/AtomicOperationMetaStoreManager.java b/polaris-core/src/main/java/org/apache/polaris/core/persistence/AtomicOperationMetaStoreManager.java index 52f1123b9d..69e4cebc4e 100644 --- a/polaris-core/src/main/java/org/apache/polaris/core/persistence/AtomicOperationMetaStoreManager.java +++ b/polaris-core/src/main/java/org/apache/polaris/core/persistence/AtomicOperationMetaStoreManager.java @@ -1608,7 +1608,8 @@ private void revokeGrantRecord( entityId); PolarisStorageConfigurationInfo storageConfigurationInfo = - BaseMetaStoreManager.extractStorageConfiguration(callCtx, reloadedEntity.getEntity()); + BaseMetaStoreManager.extractStorageConfiguration( + callCtx.getDiagServices(), reloadedEntity.getEntity()); try { AccessConfig accessConfig = storageIntegration.getSubscopedCreds( diff --git a/polaris-core/src/main/java/org/apache/polaris/core/persistence/BaseMetaStoreManager.java b/polaris-core/src/main/java/org/apache/polaris/core/persistence/BaseMetaStoreManager.java index f166102de8..9820d8950c 100644 --- a/polaris-core/src/main/java/org/apache/polaris/core/persistence/BaseMetaStoreManager.java +++ b/polaris-core/src/main/java/org/apache/polaris/core/persistence/BaseMetaStoreManager.java @@ -24,6 +24,7 @@ import jakarta.annotation.Nonnull; import java.util.Map; import org.apache.polaris.core.PolarisCallContext; +import org.apache.polaris.core.PolarisDiagnostics; import org.apache.polaris.core.entity.PolarisBaseEntity; import org.apache.polaris.core.entity.PolarisEntityConstants; import org.apache.polaris.core.entity.PolarisEntitySubType; @@ -37,20 +38,18 @@ public abstract class BaseMetaStoreManager implements PolarisMetaStoreManager { private static final ObjectMapper MAPPER = new ObjectMapper(); public static PolarisStorageConfigurationInfo extractStorageConfiguration( - @Nonnull PolarisCallContext callCtx, PolarisBaseEntity reloadedEntity) { + @Nonnull PolarisDiagnostics diagnostics, PolarisBaseEntity reloadedEntity) { Map propMap = PolarisObjectMapperUtil.deserializeProperties(reloadedEntity.getInternalProperties()); String storageConfigInfoStr = propMap.get(PolarisEntityConstants.getStorageConfigInfoPropertyName()); - callCtx - .getDiagServices() - .check( - storageConfigInfoStr != null, - "missing_storage_configuration_info", - "catalogId={}, entityId={}", - reloadedEntity.getCatalogId(), - reloadedEntity.getId()); + diagnostics.check( + storageConfigInfoStr != null, + "missing_storage_configuration_info", + "catalogId={}, entityId={}", + reloadedEntity.getCatalogId(), + reloadedEntity.getId()); return PolarisStorageConfigurationInfo.deserialize(storageConfigInfoStr); } diff --git a/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TransactionalMetaStoreManagerImpl.java b/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TransactionalMetaStoreManagerImpl.java index 6d39df1482..836c51804c 100644 --- a/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TransactionalMetaStoreManagerImpl.java +++ b/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TransactionalMetaStoreManagerImpl.java @@ -2055,7 +2055,8 @@ private PolarisEntityResolver resolveSecurableToRoleGrant( entityId); PolarisStorageConfigurationInfo storageConfigurationInfo = - BaseMetaStoreManager.extractStorageConfiguration(callCtx, reloadedEntity.getEntity()); + BaseMetaStoreManager.extractStorageConfiguration( + callCtx.getDiagServices(), reloadedEntity.getEntity()); try { AccessConfig accessConfig = storageIntegration.getSubscopedCreds( diff --git a/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TreeMapTransactionalPersistenceImpl.java b/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TreeMapTransactionalPersistenceImpl.java index 3bc7fd976f..5ce0866c34 100644 --- a/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TreeMapTransactionalPersistenceImpl.java +++ b/polaris-core/src/main/java/org/apache/polaris/core/persistence/transactional/TreeMapTransactionalPersistenceImpl.java @@ -577,7 +577,7 @@ PolarisStorageIntegration createStorageIntegrationInCurrentTxn( PolarisStorageIntegration loadPolarisStorageIntegrationInCurrentTxn( @Nonnull PolarisCallContext callCtx, @Nonnull PolarisBaseEntity entity) { PolarisStorageConfigurationInfo storageConfig = - BaseMetaStoreManager.extractStorageConfiguration(callCtx, entity); + BaseMetaStoreManager.extractStorageConfiguration(callCtx.getDiagServices(), entity); return storageIntegrationProvider.getStorageIntegrationForConfig(storageConfig); }