Palash Chauhan created PHOENIX-7756:
---------------------------------------
Summary: Compaction for uncovered indexes using data table TTL
Key: PHOENIX-7756
URL: https://issues.apache.org/jira/browse/PHOENIX-7756
Project: Phoenix
Issue Type: Improvement
Reporter: Palash Chauhan
Assignee: Palash Chauhan
Fix For: 5.4.0, 5.3.1
Phoenix can prevent creation of an uncovered global secondary index on a table
that has conditional TTL defined if the TTL expression cannot be evaluated on a
row from the uncovered index. PHOENIX-7753 allows it for tables with relaxed
conditional TTL (see PHOENIX-7667) since immediate masking after TTL expiry is
not required and we can wait till expired data table row is purged by
compaction. However, it depends on read-repair or a background verification
process to purge the orphan index rows. If there are no reads for a long time
or in the absence of a background verification process, orphan index rows can
pile up in the uncovered index.
We can modify Phoenix Compaction of an uncovered index to scan data table rows
and infer whether the index row should be compacted.
UncoveredGlobalIndexRegionScanner already has the code to extract data table
row keys from index rows and scan the data table rows - which can be used
during compaction as well.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)