This is an automated email from the ASF dual-hosted git repository.

jshao pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git


The following commit(s) were added to refs/heads/main by this push:
     new 82edbf8594 [8769] fix(flink): return empty views to keep compatibility 
with Flink SQL gataway (#9319)
82edbf8594 is described below

commit 82edbf8594718969a416c26a87c859e25608fd41
Author: FANNG <[email protected]>
AuthorDate: Wed Dec 3 20:14:16 2025 +0900

    [8769] fix(flink): return empty views to keep compatibility with Flink SQL 
gataway (#9319)
    
    ### What changes were proposed in this pull request?
    
    return empty views to keep compatibility with Flink SQL gataway
    
    ### Why are the changes needed?
    
    Fix: #8769
    
    ### Does this PR introduce _any_ user-facing change?
    no
    
    ### How was this patch tested?
    add existing tests
    
    ---------
    
    Co-authored-by: Copilot <[email protected]>
---
 .../flink/connector/catalog/BaseCatalog.java       |  7 +++--
 .../flink/connector/catalog/TestBaseCatalog.java   | 36 ++++++++++++++++++++++
 2 files changed, 41 insertions(+), 2 deletions(-)

diff --git 
a/flink-connector/flink/src/main/java/org/apache/gravitino/flink/connector/catalog/BaseCatalog.java
 
b/flink-connector/flink/src/main/java/org/apache/gravitino/flink/connector/catalog/BaseCatalog.java
index 6995096646..9e71321167 100644
--- 
a/flink-connector/flink/src/main/java/org/apache/gravitino/flink/connector/catalog/BaseCatalog.java
+++ 
b/flink-connector/flink/src/main/java/org/apache/gravitino/flink/connector/catalog/BaseCatalog.java
@@ -25,6 +25,7 @@ import com.google.common.collect.Lists;
 import com.google.common.collect.MapDifference;
 import com.google.common.collect.Maps;
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import java.util.Objects;
@@ -202,8 +203,10 @@ public abstract class BaseCatalog extends AbstractCatalog {
   }
 
   @Override
-  public List<String> listViews(String s) throws DatabaseNotExistException, 
CatalogException {
-    throw new UnsupportedOperationException();
+  public List<String> listViews(String databaseName)
+      throws DatabaseNotExistException, CatalogException {
+    // Gravitino does not support views yet; return empty to keep Flink 
callers happy.
+    return Collections.emptyList();
   }
 
   @Override
diff --git 
a/flink-connector/flink/src/test/java/org/apache/gravitino/flink/connector/catalog/TestBaseCatalog.java
 
b/flink-connector/flink/src/test/java/org/apache/gravitino/flink/connector/catalog/TestBaseCatalog.java
index 89d25f8bd0..c55645b9c6 100644
--- 
a/flink-connector/flink/src/test/java/org/apache/gravitino/flink/connector/catalog/TestBaseCatalog.java
+++ 
b/flink-connector/flink/src/test/java/org/apache/gravitino/flink/connector/catalog/TestBaseCatalog.java
@@ -20,10 +20,12 @@ package org.apache.gravitino.flink.connector.catalog;
 
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableMap;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
 import org.apache.flink.table.api.DataTypes;
 import org.apache.flink.table.api.Schema;
+import org.apache.flink.table.catalog.AbstractCatalog;
 import org.apache.flink.table.catalog.CatalogBaseTable;
 import org.apache.flink.table.catalog.CatalogDatabase;
 import org.apache.flink.table.catalog.CatalogDatabaseImpl;
@@ -31,9 +33,12 @@ import org.apache.flink.table.catalog.CatalogTable;
 import org.apache.flink.table.catalog.Column;
 import org.apache.flink.table.catalog.TableChange;
 import org.apache.gravitino.SchemaChange;
+import org.apache.gravitino.flink.connector.PartitionConverter;
+import org.apache.gravitino.flink.connector.PropertiesConverter;
 import org.apache.gravitino.rel.types.Types;
 import org.junit.jupiter.api.Assertions;
 import org.junit.jupiter.api.Test;
+import org.mockito.Mockito;
 
 public class TestBaseCatalog {
 
@@ -116,4 +121,35 @@ public class TestBaseCatalog {
         
ImmutableList.of(org.apache.gravitino.rel.TableChange.updateComment("new 
comment"));
     Assertions.assertArrayEquals(expected.toArray(), tableChanges);
   }
+
+  @Test
+  public void testListViewsReturnsEmptyWithoutDelegation() throws Exception {
+    AbstractCatalog delegate = Mockito.mock(AbstractCatalog.class);
+    BaseCatalog catalog = new TestableBaseCatalog(delegate);
+
+    List<String> views = catalog.listViews("db");
+
+    Assertions.assertTrue(views.isEmpty());
+    Mockito.verifyNoInteractions(delegate);
+  }
+
+  private static class TestableBaseCatalog extends BaseCatalog {
+
+    private final AbstractCatalog delegate;
+
+    TestableBaseCatalog(AbstractCatalog delegate) {
+      super(
+          "test",
+          Collections.emptyMap(),
+          "default",
+          Mockito.mock(PropertiesConverter.class),
+          Mockito.mock(PartitionConverter.class));
+      this.delegate = delegate;
+    }
+
+    @Override
+    protected AbstractCatalog realCatalog() {
+      return delegate;
+    }
+  }
 }

Reply via email to