You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Boaz Ben-Zvi (JIRA)" <ji...@apache.org> on 2016/09/20 01:30:20 UTC

[jira] [Created] (DRILL-4896) After a failed CTAS, the table both exists and does not exist

Boaz Ben-Zvi created DRILL-4896:
-----------------------------------

             Summary: After a failed CTAS, the table both exists and does not exist
                 Key: DRILL-4896
                 URL: https://issues.apache.org/jira/browse/DRILL-4896
             Project: Apache Drill
          Issue Type: Improvement
          Components:  Server
    Affects Versions: 1.8.0
            Reporter: Boaz Ben-Zvi


  After CTAS failed (due to no space on storage device) there were (incomplete) Parquet files left.  A subsequent CTAS for the same table name fails with "table exists", and a subsequent DROP on the same table name fails with "table does not exist".

  A possible enhancement: DROP to be able to cleanup such a corrupted table.

0: jdbc:drill:zk=local> create table `/drill/spill/tt1` as
. . . . . . . . . . . >  select
. . . . . . . . . . . >    case when columns[2] = '' then cast(null as varchar(100)) else cast(columns[2] as varchar(100)) end,
. . . . . . . . . . . >    case when columns[3] = '' then cast(null as varchar(100)) else cast(columns[3] as varchar(100)) end,
. . . . . . . . . . . >    case when columns[4] = '' then cast(null as varchar(100)) else cast(columns[4] as varchar(100)) end, 
. . . . . . . . . . . >    case when columns[5] = '' then cast(null as varchar(100)) else cast(columns[5] as varchar(100)) end, 
. . . . . . . . . . . >    case when columns[0] = '' then cast(null as varchar(100)) else cast(columns[0] as varchar(100)) end, 
. . . . . . . . . . . >    case when columns[8] = '' then cast(null as varchar(100)) else cast(columns[8] as varchar(100)) end
. . . . . . . . . . . > FROM dfs.`/Users/boazben-zvi/data/store_sales/store_sales.dat`;
Exception in thread "drill-executor-4" org.apache.hadoop.fs.FSError: java.io.IOException: No space left on device
	......... 39 more
Error: SYSTEM ERROR: IOException: The file being written is in an invalid state. Probably caused by an error thrown previously. Current state: COLUMN

Fragment 0:0

[Error Id: de84c212-2400-4a08-a15c-8e3adb5ec774 on 10.250.57.63:31010] (state=,code=0)
0: jdbc:drill:zk=local> create table `/drill/spill/tt1` as select * from dfs.`/Users/boazben-zvi/data/store_sales/store_sales.dat`;
Error: VALIDATION ERROR: A table or view with given name [/drill/spill/tt1] already exists in schema [dfs.tmp]


[Error Id: 0ef99a15-9d67-49ad-87fb-023105dece3c on 10.250.57.63:31010] (state=,code=0)
0: jdbc:drill:zk=local> drop table `/drill/spill/tt1` ;
Error: DATA_WRITE ERROR: Failed to drop table: File /drill/spill/tt1 does not exist


[Error Id: c22da79f-ecbd-423c-b5b2-4eae7d1263d7 on 10.250.57.63:31010] (state=,code=0)




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)