You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2021/06/28 08:04:00 UTC
[jira] [Updated] (HIVE-25293) Alter partitioned table with
"cascade" option create too many columns records.
[ https://issues.apache.org/jira/browse/HIVE-25293?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated HIVE-25293:
----------------------------------
Labels: pull-request-available (was: )
> Alter partitioned table with "cascade" option create too many columns records.
> ------------------------------------------------------------------------------
>
> Key: HIVE-25293
> URL: https://issues.apache.org/jira/browse/HIVE-25293
> Project: Hive
> Issue Type: Improvement
> Components: Metastore
> Affects Versions: 2.3.3, 3.1.2
> Reporter: yongtaoliao
> Assignee: yongtaoliao
> Priority: Major
> Labels: pull-request-available
> Time Spent: 10m
> Remaining Estimate: 0h
>
> When alter partitioned table with "cascade" option, all partitions supports to be updated. Currently, a CD_ID will be created for each partition, associated with a set of Columns, which will cause a large amount of redundant data in the metadata database.
> The following DDL statements can reproduce this scenario:
>
> {code:java}
> create table test_table (f1 int) partitioned by (p string);
> alter table test_table add partition(p='a');
> alter table test_table add partition(p='b');
> alter table test_table add partition(p='c');
> alter table test_table add columns (f2 int) cascade;{code}
> All partitions use the table's `CD_ID` before adding columns, while each partition use their own `CD_ID` after adding columns.
>
> My proposal is all partitions should use the same `CD_ID` when table was altered with "cascade" option.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)