Uploaded image for project: 'Hive'
  1. Hive
  2. HIVE-5664

Drop cascade database fails when the db has any tables with indexes

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.10.0, 0.11.0, 0.12.0, 0.13.0, 0.14.0
    • 1.0.0
    • Indexing, Metastore
    • None

    Description

      CREATE DATABASE db2; 
      USE db2; 
      CREATE TABLE tab1 (id int, name string); 
      CREATE INDEX idx1 ON TABLE tab1(id) as 'COMPACT' with DEFERRED REBUILD IN TABLE tab1_indx; 
      DROP DATABASE db2 CASCADE;
      

      Last DDL fails with the following error:

      FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. Database does not exist: db2
      
      Hive.log has following exception
      2013-10-27 20:46:16,629 ERROR exec.DDLTask (DDLTask.java:execute(434)) - org.apache.hadoop.hive.ql.metadata.HiveException: Database does not exist: db2
              at org.apache.hadoop.hive.ql.exec.DDLTask.dropDatabase(DDLTask.java:3473)
              at org.apache.hadoop.hive.ql.exec.DDLTask.execute(DDLTask.java:231)
              at org.apache.hadoop.hive.ql.exec.Task.executeTask(Task.java:151)
              at org.apache.hadoop.hive.ql.exec.TaskRunner.runSequential(TaskRunner.java:65)
              at org.apache.hadoop.hive.ql.Driver.launchTask(Driver.java:1441)
              at org.apache.hadoop.hive.ql.Driver.execute(Driver.java:1219)
              at org.apache.hadoop.hive.ql.Driver.runInternal(Driver.java:1047)
              at org.apache.hadoop.hive.ql.Driver.run(Driver.java:915)
              at org.apache.hadoop.hive.cli.CliDriver.processLocalCmd(CliDriver.java:268)
              at org.apache.hadoop.hive.cli.CliDriver.processCmd(CliDriver.java:220)
              at org.apache.hadoop.hive.cli.CliDriver.processLine(CliDriver.java:422)
              at org.apache.hadoop.hive.cli.CliDriver.executeDriver(CliDriver.java:790)
              at org.apache.hadoop.hive.cli.CliDriver.run(CliDriver.java:684)
              at org.apache.hadoop.hive.cli.CliDriver.main(CliDriver.java:623)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at org.apache.hadoop.util.RunJar.main(RunJar.java:160)
      Caused by: NoSuchObjectException(message:db2.tab1_indx table not found)
              at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.get_table(HiveMetaStore.java:1376)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:103)
              at com.sun.proxy.$Proxy7.get_table(Unknown Source)
              at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.getTable(HiveMetaStoreClient.java:890)
              at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreClient.java:660)
              at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropTable(HiveMetaStoreClient.java:652)
              at org.apache.hadoop.hive.metastore.HiveMetaStoreClient.dropDatabase(HiveMetaStoreClient.java:546)
              at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
              at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
              at java.lang.reflect.Method.invoke(Method.java:606)
              at org.apache.hadoop.hive.metastore.RetryingMetaStoreClient.invoke(RetryingMetaStoreClient.java:89)
              at com.sun.proxy.$Proxy8.dropDatabase(Unknown Source)
              at org.apache.hadoop.hive.ql.metadata.Hive.dropDatabase(Hive.java:284)
              at org.apache.hadoop.hive.ql.exec.DDLTask.dropDatabase(DDLTask.java:3470)
              ... 18 more
      
      

      Attachments

        1. HIVE-5664.1.patch.txt
          22 kB
          Venki Korukanti
        2. HIVE-5664.2.patch.txt
          23 kB
          Venki Korukanti
        3. HIVE-5664.3.patch.txt
          5 kB
          Venki Korukanti

        Issue Links

          Activity

            People

              vkorukanti Venki Korukanti
              vkorukanti Venki Korukanti
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: