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);