[
https://issues.apache.org/jira/browse/PHOENIX-7573?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jacob Isaac resolved PHOENIX-7573.
----------------------------------
Resolution: Fixed
> 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: Jacob Isaac
> Priority: Blocker
> Fix For: 5.3.0
>
>
> 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)