You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hive.apache.org by ng...@apache.org on 2021/04/06 15:40:11 UTC

[hive] 27/38: HIVE-24396: Fix in connector provider to return null instead of blank Table

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

ngangam pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/hive.git

commit 4319d29a2e2c3cd19c2c4249b32675229c0f4c9c
Author: Naveen Gangam <ng...@cloudera.com>
AuthorDate: Tue Dec 1 15:57:11 2020 -0500

    HIVE-24396: Fix in connector provider to return null instead of blank Table
---
 .../metastore/dataconnector/jdbc/AbstractJDBCConnectorProvider.java | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/jdbc/AbstractJDBCConnectorProvider.java b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/jdbc/AbstractJDBCConnectorProvider.java
index 12ce799..4027555 100644
--- a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/jdbc/AbstractJDBCConnectorProvider.java
+++ b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/dataconnector/jdbc/AbstractJDBCConnectorProvider.java
@@ -173,7 +173,6 @@ public abstract class AbstractJDBCConnectorProvider extends AbstractDataConnecto
       // rs = fetchTableMetadata(tableName);
       rs = fetchTableViaDBMetaData(tableName);
       List<FieldSchema> cols = new ArrayList<>();
-      // TODO throw exception is RS is empty
       while (rs.next()) {
         FieldSchema fs = new FieldSchema();
         fs.setName(rs.getString("COLUMN_NAME"));
@@ -182,6 +181,11 @@ public abstract class AbstractJDBCConnectorProvider extends AbstractDataConnecto
         cols.add(fs);
       }
 
+      if (cols.size() == 0) {
+        // table does not exists or could not be fetched
+        return null;
+      }
+
       table = buildTableFromColsList(tableName, cols);
       //Setting the table properties.
       table.getParameters().put(JDBC_DATABASE_TYPE, this.type);