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

Gokcen Iskender updated PHOENIX-6373:
-------------------------------------
    Description: 
Today, using ALTER TABLE or ALTER INDEX commands, the user can make certain 
changes to the schema. For example, changing certain table properties like TTL 
and immutability, adding nullable columns/dropping non-pk columns are allowed 
as well as certain index state changes. All of the allowed changes don’t 
require the table to be re-written. As soon as the ALTER command returns, most 
of the changes became available immediately (eg. index disable, TTL) but some 
of them might take some time and the syntax lets you to specify async (eg. 
Rebuild index) and depending on the client cache settings, some changes never 
make it to the client (eg. select * that run from a client never seeing the new 
column since its schema cache is not updated). 
 If the user wants to change the schema properties that require table 
re-writes, it is blocked and ALTER fails. Phoenix lacks of the ability to 
change some of the table schemas and attributes, such changing the row key 
(primary keys), the type of a column, the table storage format, the column 
encoding, etc. There is no way to make this changes with no or very minimal 
service interruption.

> Schema changes that require table re-writes can be supported (Online schema 
> changes)
> ------------------------------------------------------------------------------------
>
>                 Key: PHOENIX-6373
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-6373
>             Project: Phoenix
>          Issue Type: Improvement
>            Reporter: Gokcen Iskender
>            Assignee: Gokcen Iskender
>            Priority: Major
>
> Today, using ALTER TABLE or ALTER INDEX commands, the user can make certain 
> changes to the schema. For example, changing certain table properties like 
> TTL and immutability, adding nullable columns/dropping non-pk columns are 
> allowed as well as certain index state changes. All of the allowed changes 
> don’t require the table to be re-written. As soon as the ALTER command 
> returns, most of the changes became available immediately (eg. index disable, 
> TTL) but some of them might take some time and the syntax lets you to specify 
> async (eg. Rebuild index) and depending on the client cache settings, some 
> changes never make it to the client (eg. select * that run from a client 
> never seeing the new column since its schema cache is not updated). 
>  If the user wants to change the schema properties that require table 
> re-writes, it is blocked and ALTER fails. Phoenix lacks of the ability to 
> change some of the table schemas and attributes, such changing the row key 
> (primary keys), the type of a column, the table storage format, the column 
> encoding, etc. There is no way to make this changes with no or very minimal 
> service interruption.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to