[ https://issues.apache.org/jira/browse/HIVE-7046?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mariano Dominguez updated HIVE-7046: ------------------------------------ Description: Hive reads data according to the partition schema, not the table schema (because of HIVE-3833). ALTER TABLE only updates the table schema, and the changes are not propagated to partitions. Thus, the schema of a partition will differ from that of the table after altering the table schema; this is done to preserve the ability to read existing data, particularly when using binary formats such as RCFile. Binary formats do not allow changing the type of a field because of the way serialization works; a field serialized as a string will be displayed incorrectly if read as an integer. Unfortunately, as a side effect, this behavior limits the ability to add new columns to already exiting partitions using ALTER TABLE ADD COLUMNS. A possible workaround is to manually recreate the partitions, but this process could be unnecessarily cumbersome if the number of partitions is high. New columns should be propagated to existing partitions automatically instead. was: Hive reads data according to the partition schema, not the table schema (because of HIVE-3833). ALTER TABLE only updates the table schema, and the changes are not propagated to partitions. Thus, the schema of a partition will differ from that of the table after altering the table schema; this is done to preserve the ability to read existing data, particularly when using binary formats such as RCFile. Binary formats do not allow changing the type of a field because of the way serialization works; a field serialized as a string will be displayed incorrectly if read as an integer. Unfortunately, as a side effect, this behavior limits the ability to add new columns to already exiting partitions using ALTER TABLE ADD COLUMNS. A possible workaround is to recreate the partitions, but this process could be unnecessarily cumbersome if the number of partitions is high. New columns should be propagated to existing partitions automatically instead. > Propagate addition of new columns to partition schema > ----------------------------------------------------- > > Key: HIVE-7046 > URL: https://issues.apache.org/jira/browse/HIVE-7046 > Project: Hive > Issue Type: Improvement > Components: Database/Schema > Affects Versions: 0.12.0 > Reporter: Mariano Dominguez > > Hive reads data according to the partition schema, not the table schema > (because of HIVE-3833). ALTER TABLE only updates the table schema, and the > changes are not propagated to partitions. Thus, the schema of a partition > will differ from that of the table after altering the table schema; this is > done to preserve the ability to read existing data, particularly when using > binary formats such as RCFile. Binary formats do not allow changing the type > of a field because of the way serialization works; a field serialized as a > string will be displayed incorrectly if read as an integer. > Unfortunately, as a side effect, this behavior limits the ability to add new > columns to already exiting partitions using ALTER TABLE ADD COLUMNS. A > possible workaround is to manually recreate the partitions, but this process > could be unnecessarily cumbersome if the number of partitions is high. New > columns should be propagated to existing partitions automatically instead. -- This message was sent by Atlassian JIRA (v6.2#6252)