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

Stephen Yuan Jiang reassigned PHOENIX-7573:
-------------------------------------------

    Assignee: Lokesh Khurana

> Backward Compatibility Issues in Phoenix TTL
> --------------------------------------------
>
>                 Key: PHOENIX-7573
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-7573
>             Project: Phoenix
>          Issue Type: Sub-task
>    Affects Versions: 5.3.0
>            Reporter: Tanuj Khurana
>            Assignee: Lokesh Khurana
>            Priority: Blocker
>
> PHOENIX-6978 moved the TTL from HBase column family descriptor to a column in 
> SYSTEM.CATALOG. The current change has introduced some backward compatibility 
> issues when an older client connects to new server (5.3)
>  # TTLRegionScanner which implements masking now always assumes that for 
> non-system tables TTL will be specified as a scan attribute. An older client 
> connecting to a newer 5.3 server will not be specifying the TTL as a scan 
> attribute.  If the server doesn't find the scan attribute , the server should 
>  fallback to read the ttl from the column family descriptor.
>  # As part of PHOENIX-6978, the upgrade code copies the TTL from HBase 
> descriptor to SYSCAT column. This takes care of existing tables with TTL. But 
> after we upgrade the server, we can still have clients running on older 
> version. Any old client which creates a new table after the server has been 
> upgraded will continue to write the TTL to the HBase descriptors. This will 
> be a problem as the server will no longer check the HBase column descriptors 
> and TTL will not be enforced. One option is to handle this on the server side 
> as part of create table/alter table DDL operation is to translate the 
> descriptor update to a syscat update on the server side.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to