You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@phoenix.apache.org by "Jaanai (JIRA)" <ji...@apache.org> on 2018/10/10 01:43:00 UTC

[jira] [Comment Edited] (PHOENIX-4815) support alter table modify column

    [ https://issues.apache.org/jira/browse/PHOENIX-4815?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16633190#comment-16633190 ] 

Jaanai edited comment on PHOENIX-4815 at 10/10/18 1:42 AM:
-----------------------------------------------------------

{quote}Instead we should (1) mark columns for deletion and simply not return them in any queries, (2) add default values (without materializing them but adding them at runtime), and (3) rename columns without touching the data. Lastly (4) we can have way during compactions to clean up data or materialize defaults if needed.{quote}

[~lhofhansl] I agree. I also think it makes sense. More flexible schema makes Phoenix easier to use, but now the schema implement is very tricky,  as you said that client and server have to know what schema changes and the code have a little coupling that makes what we need to change be difficult. That might be one of Phoenix's directions in the future. 

 


was (Author: jaanai):
{quote}Instead we should (1) mark columns for deletion and simply not return them in any queries, (2) add default values (without materializing them but adding them at runtime), and (3) rename columns without touching the data. Lastly (4) we can have way during compactions to clean up data or materialize defaults if needed.{quote}

[~lhofhansl] I agree. I also think it makes sense. More flexible schema makes Phoenix easier to use, but now the schema implement is very tricky,  as you said that client and server have to know what schema changes and the code have a little coupling that makes what we need to change be difficult. That might be one of Phoenix's directions in future. 

 

> support alter table modify column 
> ----------------------------------
>
>                 Key: PHOENIX-4815
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-4815
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 4.12.0, 4.13.0, 4.14.0
>            Reporter: Jaanai
>            Assignee: Jaanai
>            Priority: Major
>         Attachments: PHOENIX-4815-master-v2.patch, PHOENIX-4815.patch
>
>
> if we want to change max length or scale of  fields of  variable length type(  example for :varchar, char and decimal type etc),  we can not drop column to recreate new column when the table has massive data,  which may affects online service,meanwhile, it is also very expensive. so sometimes this function is very useful.
> Taking ORACLE dialect as an reference 
> {code:java}
> alter table
>    table_name
> modify
>    column_name  datatype;
> {code}
> reference link: https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_3001.htm#i2103956



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)