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 3c9ea5d  HIVE-25841: Improve performance of deleteColumnStatsState 
(Peter Vary reviewed by Zoltan Haindrich) (#2914)
3c9ea5d is described below

commit 3c9ea5d8d6ecc0d3749e22b28bfb7690dd3f1be1
Author: pvary <pv...@cloudera.com>
AuthorDate: Wed Jan 5 13:49:21 2022 +0100

    HIVE-25841: Improve performance of deleteColumnStatsState (Peter Vary 
reviewed by Zoltan Haindrich) (#2914)
---
 .../hadoop/hive/metastore/MetaStoreDirectSql.java  | 24 +++++++++++++++++-----
 1 file changed, 19 insertions(+), 5 deletions(-)

diff --git 
a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreDirectSql.java
 
b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreDirectSql.java
index b200608..d24128c 100644
--- 
a/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreDirectSql.java
+++ 
b/standalone-metastore/metastore-server/src/main/java/org/apache/hadoop/hive/metastore/MetaStoreDirectSql.java
@@ -2952,14 +2952,28 @@ class MetaStoreDirectSql {
   }
 
   public void deleteColumnStatsState(long tbl_id) throws MetaException {
-    // @formatter:off
-    String queryText = ""
-        + "delete from " + PARTITION_PARAMS + " "
-            + " where "
+    String queryText;
+    switch (dbType.dbType) {
+      case MYSQL:
+        // @formatter:off
+        queryText = ""
+            + "delete pp from " + PARTITION_PARAMS + " pp, " + PARTITIONS + " 
p"
+            + " where"
+            + "   p.\"PART_ID\" = pp.\"PART_ID\" AND"
+            + "   p.\"TBL_ID\" = " + tbl_id
+            + "  and \"PARAM_KEY\" = '"+StatsSetupConst.COLUMN_STATS_ACCURATE 
+ "'";
+        // @formatter:on
+        break;
+      default:
+        // @formatter:off
+        queryText = ""
+            + "delete from " + PARTITION_PARAMS
+            + " where"
             + "   \"PART_ID\" in (select p.\"PART_ID\"  from " + PARTITIONS + 
" p where"
             + "   p.\"TBL_ID\" =  " + tbl_id + ")"
             + "  and \"PARAM_KEY\" = '"+StatsSetupConst.COLUMN_STATS_ACCURATE 
+ "'";
-    // @formatter:on
+        // @formatter:on
+    }
 
     try {
       executeNoResult(queryText);

Reply via email to