You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Geoffrey Jacoby (Jira)" <ji...@apache.org> on 2021/04/09 00:10:00 UTC

[jira] [Commented] (HBASE-25751) Add writable TimeToPurgeDeletes to ScanOptions

    [ https://issues.apache.org/jira/browse/HBASE-25751?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17317549#comment-17317549 ] 

Geoffrey Jacoby commented on HBASE-25751:
-----------------------------------------

Overriding preFlush or preCompact instead (as suggested as an alternative in the prior JIRAs) would not be possible in this use case because the goal is to make the InternalScanner wider in scope (so as to purge less) rather than narrower, as in the WriteHeavyObserver. It's not possible for coproc authors to instantiate new InternalScanners without use of IA.Private interfaces and classes.

Using ScanOptions is also much simpler and safer. 

> Add writable TimeToPurgeDeletes to ScanOptions
> ----------------------------------------------
>
>                 Key: HBASE-25751
>                 URL: https://issues.apache.org/jira/browse/HBASE-25751
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Geoffrey Jacoby
>            Priority: Major
>
> In HBase 1.x and before, it was possible to override all settings on the ScanInfo when overriding the flush and compaction scanner open coprocoessors. HBase 2.x changed the coprocessor model to instead allow changes to a limited set of options on the ScanOptions object.  
> In HBASE-19895 and HBASE-24321, we added support for KeepDeletedCells and MinVersions to be overriden by ScanOptions, as needed by Phoenix. 
> A 1.x coprocessor used at my day job overrides TimeToPurgeDeletes, and to convert it to HBase 2.x that property would need to be overridable from ScanOptions as well. This should be a straightforward extension of the previous work. 



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