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

Temporary table with LOCATION clause not removed after session ends

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Patch Available
    • Major
    • Resolution: Unresolved
    • 2.3.0
    • None
    • None
    • None
    • temporary, table, cleanup

    Description

      When using CREATE TEMPORARY TABLE with a LOCATION clause, Hive doesn't remove the created files when the session ends.

      Steps to reproduce:

      beeline
        CREATE TEMPORARY TABLE this_gets_removed AS SELECT 'OK';
        CREATE TEMPORARY TABLE this_stays LOCATION '/tmp/this_stays' AS SELECT 'BAD';
        !quit
      
      hdfs dfs -ls -R "/tmp/hive/${USER}" "/tmp/this_stays"
      

      Expected result: files and directories for this_gets_removed and this_stays are removed.
      Actual result: files and directories for this_gets_removed are removed, files and directories for this_stays are still present.

      Ideally, it would be great if the LOCATION clause worked with the TEMPORARY clause. If they can't be made to work together, perhaps the LOCATION clause should be illegal when using TEMPORARY.

      Attachments

        1. HIVE-15729.01.patch
          2 kB
          jinzheng
        2. HIVE-15729.02.patch
          2 kB
          jinzheng

        Activity

          People

            jinzheng jinzheng
            mtrusc Marcus T
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: