[jira] [Updated] (PHOENIX-1409) Allow ALTER TABLE SET command to update HTableDescriptor and HColumnDescriptor properties

Sat, 27 Dec 2014 03:07:33 -0800

     [ 
https://issues.apache.org/jira/browse/PHOENIX-1409?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Samarth Jain updated PHOENIX-1409:
----------------------------------
    Attachment: PHOENIX-1409-v3.patch

Thanks for the patch [~ayingshu]. Attached is my updated patch that addresses 
following issues:

1) TTL - [~jamestaylor] and I discussed offline and we decided that for now we 
will only be supporting for all column families to have the same TTL as the 
empty column family. This means we error out if a column family is specified 
while setting TTL property - both at CREATE TABLE and ALTER TABLE time. 
Also changes were made to make sure that any new column family added gets the 
same TTL as the empty CF. 

2) Changed tests that were failing because of above change. 

3) Since 0.98 HBase now supports online schema upgrade. That change was made as 
part of PHOENIX-1408. We have code in ConnectionQueryServicesImpl that 
leverages the same while modifying table or adding/modifying column. Your 
change was disabling the entire HTable whenever properties needed to be 
added/changed.  We don’t need to modify table if we are not updating HTable 
properties. Instead we should just be changing column families by calling 
queryServices.modifyColumn. 

4) Statements that were trying to change properties for column families that 
were getting added in the same statement weren't working. For ex - 
ALTER TABLE ADD NEWCF.NEWCOL NEWCF.IN_MEMORY=true was erroring  out saying 
column family NEWCF not found.
 
5) Added a new Property class and PhoenixTableProperty enum that encapsulates 
Phoenix specific table properties and validations we want to run through when 
adding those properties. 

6) Added validations that disallows setting properties on views. 

7) Since we are no longer reusing forked JVMs, there is no point doing the 
clean up after every test class finishes. I removed code that was dropping non 
system tables and shutting down mini cluster. This should reduce the time it 
takes to execute our tests.

> Allow ALTER TABLE <table> SET command to update HTableDescriptor and 
> HColumnDescriptor properties
> -------------------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-1409
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-1409
>             Project: Phoenix
>          Issue Type: Improvement
>    Affects Versions: 4.2
>            Reporter: James Taylor
>            Assignee: Alicia Ying Shu
>         Attachments: PHOENIX-1409-v3.patch, Phoenix-1409-v1.patch, 
> Phoenix-1409.patch, WIP.patch, phoenix-1409-v2.patch
>
>
> Once PHOENIX-1408 is fixed, we should allow HTableDescriptor and 
> HColumnDescriptor properties through the ALTER TABLE <table> SET command. 
> It'd just be a matter of passing these properties through the existing 
> methods, as we support this for CREATE TABLE.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to