From c4accaa013f3c50fb6186d268cb8e967989e7ac5 Mon Sep 17 00:00:00 2001 From: Yunfeng Zhou Date: Wed, 10 Sep 2025 19:54:03 +0800 Subject: [PATCH] [core] fix RESTCatalog#listViews for system database --- .../src/main/java/org/apache/paimon/rest/RESTCatalog.java | 5 ++++- .../test/java/org/apache/paimon/catalog/CatalogTestBase.java | 2 ++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/paimon-core/src/main/java/org/apache/paimon/rest/RESTCatalog.java b/paimon-core/src/main/java/org/apache/paimon/rest/RESTCatalog.java index fcf2d0525f04..6cdb23b5a54d 100644 --- a/paimon-core/src/main/java/org/apache/paimon/rest/RESTCatalog.java +++ b/paimon-core/src/main/java/org/apache/paimon/rest/RESTCatalog.java @@ -68,6 +68,7 @@ import java.io.IOException; import java.io.UncheckedIOException; import java.util.ArrayList; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -844,7 +845,9 @@ public void createView(Identifier identifier, View view, boolean ignoreIfExists) @Override public List listViews(String databaseName) throws DatabaseNotExistException { try { - return api.listViews(databaseName); + return CatalogUtils.isSystemDatabase(databaseName) + ? Collections.emptyList() + : api.listViews(databaseName); } catch (NoSuchResourceException e) { throw new DatabaseNotExistException(databaseName); } diff --git a/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogTestBase.java b/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogTestBase.java index 9998acd32029..7222f0df6c6b 100644 --- a/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogTestBase.java +++ b/paimon-core/src/test/java/org/apache/paimon/catalog/CatalogTestBase.java @@ -840,6 +840,8 @@ public void testGetTable() throws Exception { .containsExactlyInAnyOrder( AllTableOptionsTable.ALL_TABLE_OPTIONS, CatalogOptionsTable.CATALOG_OPTIONS); + + assertThat(catalog.listViews(SYSTEM_DATABASE_NAME)).isEmpty(); } @Test