László Végh created HIVE-26504:
----------------------------------
Summary: User is not able to drop table
Key: HIVE-26504
URL: https://issues.apache.org/jira/browse/HIVE-26504
Project: Hive
Issue Type: Bug
Components: Hive
Reporter: László Végh
Hive won't store anything in *TAB_COL_STATS* for partitioned table, whereas
impala stores complete column stats in TAB_COL_STATS for partitioned table.
Deleting entries in TAB_COL_STATS is based on (DB_NAME, TABLE_NAME), not by
TBL_ID. Renamed tables were having old names in TAB_COL_STATS.
To Repro:
{code:java}
beeline:
set hive.create.as.insert.only=false;
set hive.create.as.acid=false;
create table testes.table_name_with_partition (id tinyint, name string)
partitioned by (col_to_partition bigint) stored as parquet;
insert into testes.table_name_with_partition (id, name, col_to_partition)
values (1, "a", 2020), (2, "b", 2021), (3, "c", 2022);
impala:
compute stats testes.table_name_with_partition; -- backend shows new entries in
TAB_COL_STATS
beeline:
alter table testes.table_name_with_partition rename to
testes2.table_that_cant_be_droped;
drop table testes2.table_that_cant_be_droped; -- This fails with
TAB_COL_STATS_fkey constraint violation.
{code}
Exception trace for drop table failure
{code:java}
Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on table
"TBLS" violates foreign key constraint "TAB_COL_STATS_fkey" on table
"TAB_COL_STATS"
Detail: Key (TBL_ID)=(19816) is still referenced from table "TAB_COL_STATS".
at
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2532)
at
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2267)
... 50 more
{code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)