Author: hashutosh
Date: Sat Nov 15 16:35:17 2014
New Revision: 1639907

URL: http://svn.apache.org/r1639907
Log:
HIVE-5664 : Drop cascade database fails when the db has any tables with indexes 
(Venki Korukanti via Ashutosh Chauhan)

Modified:
    
hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
    hive/trunk/ql/src/test/queries/clientpositive/database_drop.q
    hive/trunk/ql/src/test/results/clientpositive/database_drop.q.out

Modified: 
hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
URL: 
http://svn.apache.org/viewvc/hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java?rev=1639907&r1=1639906&r2=1639907&view=diff
==============================================================================
--- 
hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
 (original)
+++ 
hive/trunk/metastore/src/java/org/apache/hadoop/hive/metastore/HiveMetaStoreClient.java
 Sat Nov 15 16:35:17 2014
@@ -695,7 +695,7 @@ public class HiveMetaStoreClient impleme
        for (String table : tableList) {
          try {
            // Subclasses can override this step (for example, for temporary 
tables)
-           dropTable(name, table, deleteData, false);
+           dropTable(name, table, deleteData, true);
          } catch (UnsupportedOperationException e) {
            // Ignore Index tables, those will be dropped with parent tables
          }

Modified: hive/trunk/ql/src/test/queries/clientpositive/database_drop.q
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/queries/clientpositive/database_drop.q?rev=1639907&r1=1639906&r2=1639907&view=diff
==============================================================================
--- hive/trunk/ql/src/test/queries/clientpositive/database_drop.q (original)
+++ hive/trunk/ql/src/test/queries/clientpositive/database_drop.q Sat Nov 15 
16:35:17 2014
@@ -75,6 +75,12 @@ CREATE EXTERNAL TABLE extab1(id INT, nam
               STORED AS TEXTFILE
               LOCATION 'file:${system:test.tmp.dir}/dbcascade/extab1';
 
+-- add a table, create index (give a name for index table)
+CREATE TABLE temp_tbl3 (id INT, name STRING);
+LOAD DATA LOCAL INPATH '../../data/files/kv1.txt' into table temp_tbl3;
+CREATE INDEX temp_tbl3_idx ON TABLE temp_tbl3(id) AS 'COMPACT' with DEFERRED 
REBUILD IN TABLE temp_tbl3_idx_tbl;
+ALTER INDEX temp_tbl3_idx ON temp_tbl3 REBUILD;
+
 -- drop the database with cascade
 DROP DATABASE db5 CASCADE;
 

Modified: hive/trunk/ql/src/test/results/clientpositive/database_drop.q.out
URL: 
http://svn.apache.org/viewvc/hive/trunk/ql/src/test/results/clientpositive/database_drop.q.out?rev=1639907&r1=1639906&r2=1639907&view=diff
==============================================================================
--- hive/trunk/ql/src/test/results/clientpositive/database_drop.q.out (original)
+++ hive/trunk/ql/src/test/results/clientpositive/database_drop.q.out Sat Nov 
15 16:35:17 2014
@@ -352,6 +352,42 @@ POSTHOOK: type: CREATETABLE
 #### A masked pattern was here ####
 POSTHOOK: Output: database:db5
 POSTHOOK: Output: db5@extab1
+PREHOOK: query: -- add a table, create index (give a name for index table)
+CREATE TABLE temp_tbl3 (id INT, name STRING)
+PREHOOK: type: CREATETABLE
+PREHOOK: Output: database:db5
+PREHOOK: Output: db5@temp_tbl3
+POSTHOOK: query: -- add a table, create index (give a name for index table)
+CREATE TABLE temp_tbl3 (id INT, name STRING)
+POSTHOOK: type: CREATETABLE
+POSTHOOK: Output: database:db5
+POSTHOOK: Output: db5@temp_tbl3
+PREHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/kv1.txt' into table 
temp_tbl3
+PREHOOK: type: LOAD
+#### A masked pattern was here ####
+PREHOOK: Output: db5@temp_tbl3
+POSTHOOK: query: LOAD DATA LOCAL INPATH '../../data/files/kv1.txt' into table 
temp_tbl3
+POSTHOOK: type: LOAD
+#### A masked pattern was here ####
+POSTHOOK: Output: db5@temp_tbl3
+PREHOOK: query: CREATE INDEX temp_tbl3_idx ON TABLE temp_tbl3(id) AS 'COMPACT' 
with DEFERRED REBUILD IN TABLE temp_tbl3_idx_tbl
+PREHOOK: type: CREATEINDEX
+PREHOOK: Input: db5@temp_tbl3
+POSTHOOK: query: CREATE INDEX temp_tbl3_idx ON TABLE temp_tbl3(id) AS 
'COMPACT' with DEFERRED REBUILD IN TABLE temp_tbl3_idx_tbl
+POSTHOOK: type: CREATEINDEX
+POSTHOOK: Input: db5@temp_tbl3
+POSTHOOK: Output: db5@temp_tbl3_idx_tbl
+PREHOOK: query: ALTER INDEX temp_tbl3_idx ON temp_tbl3 REBUILD
+PREHOOK: type: ALTERINDEX_REBUILD
+PREHOOK: Input: db5@temp_tbl3
+PREHOOK: Output: db5@temp_tbl3_idx_tbl
+POSTHOOK: query: ALTER INDEX temp_tbl3_idx ON temp_tbl3 REBUILD
+POSTHOOK: type: ALTERINDEX_REBUILD
+POSTHOOK: Input: db5@temp_tbl3
+POSTHOOK: Output: db5@temp_tbl3_idx_tbl
+POSTHOOK: Lineage: temp_tbl3_idx_tbl._bucketname SIMPLE 
[(temp_tbl3)temp_tbl3.FieldSchema(name:INPUT__FILE__NAME, type:string, 
comment:), ]
+POSTHOOK: Lineage: temp_tbl3_idx_tbl._offsets EXPRESSION 
[(temp_tbl3)temp_tbl3.FieldSchema(name:BLOCK__OFFSET__INSIDE__FILE, 
type:bigint, comment:), ]
+POSTHOOK: Lineage: temp_tbl3_idx_tbl.id SIMPLE 
[(temp_tbl3)temp_tbl3.FieldSchema(name:id, type:int, comment:null), ]
 PREHOOK: query: -- drop the database with cascade
 DROP DATABASE db5 CASCADE
 PREHOOK: type: DROPDATABASE
@@ -369,6 +405,8 @@ PREHOOK: Output: db5@part_tab3
 PREHOOK: Output: db5@temp_tbl
 PREHOOK: Output: db5@temp_tbl2
 PREHOOK: Output: db5@temp_tbl2_view
+PREHOOK: Output: db5@temp_tbl3
+PREHOOK: Output: db5@temp_tbl3_idx_tbl
 PREHOOK: Output: db5@temp_tbl_view
 POSTHOOK: query: -- drop the database with cascade
 DROP DATABASE db5 CASCADE
@@ -387,5 +425,7 @@ POSTHOOK: Output: db5@part_tab3
 POSTHOOK: Output: db5@temp_tbl
 POSTHOOK: Output: db5@temp_tbl2
 POSTHOOK: Output: db5@temp_tbl2_view
+POSTHOOK: Output: db5@temp_tbl3
+POSTHOOK: Output: db5@temp_tbl3_idx_tbl
 POSTHOOK: Output: db5@temp_tbl_view
 #### A masked pattern was here ####


Reply via email to