[
https://issues.apache.org/jira/browse/HBASE-1949?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Gary Helmling updated HBASE-1949:
---------------------------------
Attachment: ttl_expire-0.20.patch
The attached patch (against the 0.20 branch) changes the
ScanQueryMatcher.match() return value in this case to just seek to the next
column and adds a test for this case.
> KeyValue expiration by Time-to-Live during major compaction is broken
> ---------------------------------------------------------------------
>
> Key: HBASE-1949
> URL: https://issues.apache.org/jira/browse/HBASE-1949
> Project: Hadoop HBase
> Issue Type: Bug
> Components: regionserver
> Affects Versions: 0.20.1
> Reporter: Gary Helmling
> Attachments: ttl_expire-0.20.patch
>
>
> During a major compaction on a region in a column family with a configured
> TTL, it looks like all KeyValues in a row after the first expired KeyValue
> are skipping and thrown out of the newly written file (regardless of whether
> the would have been expired or not).
> The StoreScanner is skipping to the next row, even when other columns with a
> non-expirable timestamp exists. Unless I'm misunderstanding it, it seems
> like it should just seek to the next column instead. I discovered this when
> altering a table to lower the TTL for a column family and force the
> expiration of some data which led to the entire row being expired in some
> instances.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.