Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Plain View
Hive >> mail # user >> ALTER TABLE CHANGE COLUMN issue


+
hardik doshi 2013-01-30, 08:14
+
Nitin Pawar 2013-01-30, 08:17
+
Dean Wampler 2013-01-30, 13:51
+
hardik doshi 2013-01-30, 19:12
Copy link to this message
-
Re: ALTER TABLE CHANGE COLUMN issue
Hardik,
The schema is associated per partition. It sounds to me that the structure
of your data remains the same, you are just expressing it differently in
your Hive table.

If you are table is external this is no biggie, just drop the external
table, re-create it and re-add the partitions. If not, you'll have to look
into the documentation to see if there is an alter table partition
(partition spec)... command that will let you alter metadata about the
partition.

If I am not mistaken, alter table doesn't touch your existing columns, just
modifies the partitions going forward.

Mark

On Wed, Jan 30, 2013 at 11:12 AM, hardik doshi <[EMAIL PROTECTED]>wrote:

> Thanks, Nitin & Dean.
>
> My hive table is backed by data files in hdfs and they do contain the
> additional field that I am adding in my hive table schema.
>
> I noticed that if I remove partitions and recreate them after changing the
> column type, it works. But it does not work
> on old partition for some weird reasons.
>
> Any ideas?
>
> -Hardik.
>
>
>    ------------------------------
> *From:* Dean Wampler <[EMAIL PROTECTED]>
> *To:* [EMAIL PROTECTED]
> *Cc:* hardik doshi <[EMAIL PROTECTED]>
> *Sent:* Wednesday, January 30, 2013 5:51 AM
> *Subject:* Re: ALTER TABLE CHANGE COLUMN issue
>
> Right, the very important thing to remember about ALTER TABLE is that it
> only changes metadata about your table. It doesn't modify the data in any
> way. You have to do that yourself.
>
> On Wed, Jan 30, 2013 at 2:17 AM, Nitin Pawar <[EMAIL PROTECTED]>wrote:
>
> after u did alter table, did you add any new data to table with new
> schema?
>
> for the old data already present in data, if you add anything new in
> columns it will be null value
>
>
> On Wed, Jan 30, 2013 at 1:44 PM, hardik doshi <[EMAIL PROTECTED]>wrote:
>
> Hi,
>
> I am running into an issue where ALTER TABLE CHANGE COLUMN does not seem
> to be working.
>
> I have a table with a column data type looking like array<struct<a:int,
> b:int>> and I am trying to it change to array<struct<a:int, b:int,
> c:string>> based
> on the underlying data schema change.
>
> The alter command succeeds and subsequent describe call shows me the
> updated table structure. But when tried querying the table,
> it returns null for the newly added field.
>
> This does not happen when a new table with updated column data type is
> created.
>
> Is this a known bug?
>
> Thanks,
> Hardik.
>
> PS:- My alter command: ALTER TABLE hardiktest CHANGE COLUMN col1 col2
> array<struct<a:int, b:int, c:string>>.
>
>
>
>
> --
> Nitin Pawar
>
>
>
>
> --
> *Dean Wampler, Ph.D.*
> thinkbiganalytics.com
> +1-312-339-1330
>
>
>
>
+
Nitin Pawar 2013-01-30, 19:37