[hive] branch master updated: HIVE-25912: Drop external table throw NPE if the location set to ROOT (Fachuan Bai reviewed by Peter Vary) (#3009)

2022-02-13 Thread pvary
This is an automated email from the ASF dual-hosted git repository.

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


The following commit(s) were added to refs/heads/master by this push:
 new 108f151  HIVE-25912: Drop external table throw NPE if the location set 
to ROOT (Fachuan Bai reviewed by Peter Vary) (#3009)
108f151 is described below

commit 108f1513dd353a019f9182dee0a0eba35b0d6f9f
Author: 白发川(惊帆) 
AuthorDate: Mon Feb 14 14:48:47 2022 +0800

HIVE-25912: Drop external table throw NPE if the location set to ROOT 
(Fachuan Bai reviewed by Peter Vary) (#3009)

Closes #3009
---
 .../hive/metastore/utils/MetaStoreUtils.java   |  8 
 .../apache/hadoop/hive/metastore/HMSHandler.java   |  5 +
 .../client/TestTablesCreateDropAlterTruncate.java  | 21 +
 .../metastore/utils/TestMetaStoreServerUtils.java  | 22 ++
 4 files changed, 56 insertions(+)

diff --git 
a/standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/MetaStoreUtils.java
 
b/standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/MetaStoreUtils.java
index 93c1000..07be990 100644
--- 
a/standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/MetaStoreUtils.java
+++ 
b/standalone-metastore/metastore-common/src/main/java/org/apache/hadoop/hive/metastore/utils/MetaStoreUtils.java
@@ -186,6 +186,14 @@ public class MetaStoreUtils {
 return colNames;
   }
 
+  /*
+   * Check the table storage location must not be root path.
+   */
+  public static boolean validateTblStorage(StorageDescriptor sd) {
+return !(StringUtils.isNotBlank(sd.getLocation())
+&& new Path(sd.getLocation()).getParent() == null);
+  }
+
   /**
* validateName
*
diff --git 
a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HMSHandler.java
 
b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HMSHandler.java
index bd74b3e..2d57e58 100644
--- 
a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HMSHandler.java
+++ 
b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/HMSHandler.java
@@ -2282,6 +2282,11 @@ public class HMSHandler extends FacebookBase implements 
IHMSHandler {
   + " is not a valid object name");
 }
 
+if (!MetaStoreUtils.validateTblStorage(tbl.getSd())) {
+  throw new InvalidObjectException(tbl.getTableName()
+  + " location must not be root path");
+}
+
 if (!tbl.isSetCatName()) {
   tbl.setCatName(getDefaultCatalog(conf));
 }
diff --git 
a/standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/client/TestTablesCreateDropAlterTruncate.java
 
b/standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/client/TestTablesCreateDropAlterTruncate.java
index a6ea8cd..b92790a 100644
--- 
a/standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/client/TestTablesCreateDropAlterTruncate.java
+++ 
b/standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/client/TestTablesCreateDropAlterTruncate.java
@@ -78,6 +78,7 @@ import java.util.Set;
 import static 
org.apache.hadoop.hive.metastore.TestHiveMetaStore.createSourceTable;
 import static org.apache.hadoop.hive.metastore.Warehouse.DEFAULT_CATALOG_NAME;
 import static org.apache.hadoop.hive.metastore.Warehouse.DEFAULT_DATABASE_NAME;
+import static org.junit.Assert.assertThrows;
 
 /**
  * Test class for IMetaStoreClient API. Testing the Table related functions 
for metadata
@@ -357,6 +358,26 @@ public class TestTablesCreateDropAlterTruncate extends 
MetaStoreClientTest {
 createdTable.getSd().getLocation());
   }
 
+
+  @Test
+  public void testCreateTableRooPathLocationInSpecificDatabase() {
+Table table = new Table();
+StorageDescriptor sd = new StorageDescriptor();
+List cols = new ArrayList<>();
+sd.setLocation("hdfs://localhost:8020");
+table.setDbName(DEFAULT_DATABASE);
+table.setTableName("test_table_2_with_root_path");
+cols.add(new FieldSchema("column_name", "int", null));
+sd.setCols(cols);
+sd.setSerdeInfo(new SerDeInfo());
+table.setSd(sd);
+
+Exception exception = assertThrows(InvalidObjectException.class, () -> 
client.createTable(table));
+Assert.assertEquals("Storage descriptor location",
+table.getTableName() + " location must not be root path",
+exception.getMessage());
+  }
+
   @Test
   public void testCreateTableDefaultValuesView() throws Exception {
 Table table = new Table();
diff --git 
a/standalone-metastore/metastore-server/src/test/java/org/apache/hadoop/hive/metastore/utils/TestMetaStoreServerUtils.java
 

[hive] branch master updated (43a08a8 -> 81f2ee3)

2022-02-13 Thread ayushsaxena
This is an automated email from the ASF dual-hosted git repository.

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


from 43a08a8  HIVE-25942: Upgrade commons-io version to 2.8.0 due to 
CVE-2021-29425. (#3008) (Syed Shameerur Rahman reviewed by Zoltan Haindrich)
 add 81f2ee3  HIVE-25895: Bootstrap tables in table_diff during Incremental 
Load. (#2980). (Ayush Saxena, reviewed by Pravin Kumar Sinha)

No new revisions were added by this update.

Summary of changes:
 .../parse/TestReplicationOptimisedBootstrap.java   | 269 +
 .../hive/ql/exec/repl/OptimisedBootstrapUtils.java |  38 +++
 .../hadoop/hive/ql/exec/repl/ReplDumpTask.java |  75 --
 .../hadoop/hive/ql/exec/repl/ReplLoadTask.java |  34 ++-
 .../hadoop/hive/ql/exec/repl/ReplLoadWork.java |  20 +-
 5 files changed, 418 insertions(+), 18 deletions(-)


[hive] branch master updated: HIVE-25942: Upgrade commons-io version to 2.8.0 due to CVE-2021-29425. (#3008) (Syed Shameerur Rahman reviewed by Zoltan Haindrich)

2022-02-13 Thread kgyrtkirk
This is an automated email from the ASF dual-hosted git repository.

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


The following commit(s) were added to refs/heads/master by this push:
 new 43a08a8  HIVE-25942: Upgrade commons-io version to 2.8.0 due to 
CVE-2021-29425. (#3008) (Syed Shameerur Rahman reviewed by Zoltan Haindrich)
43a08a8 is described below

commit 43a08a81335922f205753dccb1dce985bc4533cf
Author: Syed Shameerur Rahman 
AuthorDate: Sun Feb 13 17:00:59 2022 +0530

HIVE-25942: Upgrade commons-io version to 2.8.0 due to CVE-2021-29425. 
(#3008) (Syed Shameerur Rahman reviewed by Zoltan Haindrich)
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 761d573..ffd2433 100644
--- a/pom.xml
+++ b/pom.xml
@@ -125,7 +125,7 @@
 1.21
 1.10
 1.1
-2.6
+2.8.0
 3.9
 3.6.1
 2.7.0