This is an automated email from the ASF dual-hosted git repository. majin1102 pushed a commit to branch emr/hms-namespace-explorer in repository https://gitbox.apache.org/repos/asf/amoro.git
commit be61ce71af5affbbef109c16968032376fd7bcc3 Author: majin.nathan <[email protected]> AuthorDate: Thu Aug 6 22:51:28 2026 +0800 feat: enable catalog namespaces by default --- .../java/org/apache/amoro/server/AmoroManagementConf.java | 2 +- .../server/catalog/TestDefaultCatalogManagerNamespaces.java | 12 +++++++++++- dist/src/main/amoro-bin/conf/config.yaml | 6 +++--- docs/configuration/ams-config.md | 3 +-- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/amoro-ams/src/main/java/org/apache/amoro/server/AmoroManagementConf.java b/amoro-ams/src/main/java/org/apache/amoro/server/AmoroManagementConf.java index 82efcb281..c122cee2b 100644 --- a/amoro-ams/src/main/java/org/apache/amoro/server/AmoroManagementConf.java +++ b/amoro-ams/src/main/java/org/apache/amoro/server/AmoroManagementConf.java @@ -116,7 +116,7 @@ public class AmoroManagementConf { public static final ConfigOption<Boolean> CATALOG_NAMESPACE_ENABLED = ConfigOptions.key("catalog.namespace-enabled") .booleanType() - .defaultValue(false) + .defaultValue(true) .withDescription("Whether catalogs are grouped by an optional namespace."); public static final ConfigOption<Integer> TABLE_MANIFEST_IO_THREAD_COUNT = diff --git a/amoro-ams/src/test/java/org/apache/amoro/server/catalog/TestDefaultCatalogManagerNamespaces.java b/amoro-ams/src/test/java/org/apache/amoro/server/catalog/TestDefaultCatalogManagerNamespaces.java index af8dbed85..a8b91fc05 100644 --- a/amoro-ams/src/test/java/org/apache/amoro/server/catalog/TestDefaultCatalogManagerNamespaces.java +++ b/amoro-ams/src/test/java/org/apache/amoro/server/catalog/TestDefaultCatalogManagerNamespaces.java @@ -58,9 +58,19 @@ public class TestDefaultCatalogManagerNamespaces { } @Test - public void testCommunityDefaultsRemainCompatible() { + public void testNamespaceSupportIsEnabledByDefault() { DefaultCatalogManager manager = new DefaultCatalogManager(new Configurations()); + Assertions.assertTrue(manager.supportNamespace()); + Assertions.assertTrue(manager.listNamespaces().isEmpty()); + } + + @Test + public void testDisabledNamespaceRemainsCompatible() { + Configurations configurations = new Configurations(); + configurations.setBoolean(AmoroManagementConf.CATALOG_NAMESPACE_ENABLED, false); + DefaultCatalogManager manager = new DefaultCatalogManager(configurations); + Assertions.assertFalse(manager.supportNamespace()); Assertions.assertEquals(Collections.singletonList("default"), manager.listNamespaces()); Assertions.assertEquals(manager.listCatalogMetas(), manager.listCatalogMetas("default")); diff --git a/dist/src/main/amoro-bin/conf/config.yaml b/dist/src/main/amoro-bin/conf/config.yaml index c23a8d4a2..2c2ad6543 100644 --- a/dist/src/main/amoro-bin/conf/config.yaml +++ b/dist/src/main/amoro-bin/conf/config.yaml @@ -148,10 +148,10 @@ ams: catalog-meta-cache: expiration-interval: 60s - # Optional namespace level for catalog browsing. LAS deployments enable this and typically set - # refresh-external-catalogs.interval to 10min; the community defaults remain unchanged. + # Optional namespace level for catalog browsing. Disable this to retain the legacy single-level + # catalog explorer. LAS deployments typically set refresh-external-catalogs.interval to 10min. catalog: - namespace-enabled: false + namespace-enabled: true # Support for encrypted sensitive configuration items shade: diff --git a/docs/configuration/ams-config.md b/docs/configuration/ams-config.md index 32003801a..70282a6b9 100644 --- a/docs/configuration/ams-config.md +++ b/docs/configuration/ams-config.md @@ -46,7 +46,7 @@ table td:last-child, table th:last-child { width: 40%; word-break: break-all; } | admin-username | admin | The administrator account name. | | blocker.timeout | 1 min | Session timeout. Default unit is milliseconds if not specified. | | catalog-meta-cache.expiration-interval | 1 min | TTL for catalog metadata. | -| catalog.namespace-enabled | false | Whether catalogs are grouped by an optional namespace. | +| catalog.namespace-enabled | true | Whether catalogs are grouped by an optional namespace. | | database.auto-create-tables | true | Auto init table schema when started | | database.connection-pool-max-idle | 16 | Max idle connect count of database connect pool. | | database.connection-pool-max-total | 20 | Max connect count of database connect pool. | @@ -232,4 +232,3 @@ table td:last-child, table th:last-child { width: 40%; word-break: break-all; } | --- | ------- | ----------- | | shade.identifier | default | The identifier of the encryption method for decryption. Defaults to "default", indicating no encryption | | shade.sensitive-keywords | admin-password;database.password | A semicolon-separated list of keywords for the configuration items to be decrypted. | -
