[
https://issues.apache.org/jira/browse/HBASE-24321?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17104546#comment-17104546
]
Hudson commented on HBASE-24321:
--------------------------------
Results for branch master
[build #1723 on
builds.a.o|https://builds.apache.org/job/HBase%20Nightly/job/master/1723/]: (x)
*{color:red}-1 overall{color}*
----
details (if available):
(/) {color:green}+1 general checks{color}
-- For more information [see general
report|https://builds.apache.org/job/HBase%20Nightly/job/master/1723/General_20Nightly_20Build_20Report/]
(x) {color:red}-1 jdk8 hadoop2 checks{color}
-- For more information [see jdk8 (hadoop2)
report|https://builds.apache.org/job/HBase%20Nightly/job/master/1475//JDK8_Nightly_Build_Report_(Hadoop2)/]
(/) {color:green}+1 jdk8 hadoop3 checks{color}
-- For more information [see jdk8 (hadoop3)
report|https://builds.apache.org/job/HBase%20Nightly/job/master/1723/JDK8_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(x) {color:red}-1 jdk11 hadoop3 checks{color}
-- For more information [see jdk11
report|https://builds.apache.org/job/HBase%20Nightly/job/master/1723/JDK11_20Nightly_20Build_20Report_20_28Hadoop3_29/]
(/) {color:green}+1 source release artifact{color}
-- See build output for details.
(/) {color:green}+1 client integration test{color}
> Add writable MinVersions and read-only Scan to coproc ScanOptions
> -----------------------------------------------------------------
>
> Key: HBASE-24321
> URL: https://issues.apache.org/jira/browse/HBASE-24321
> Project: HBase
> Issue Type: Improvement
> Reporter: Geoffrey Jacoby
> Assignee: Geoffrey Jacoby
> Priority: Major
> Fix For: 3.0.0-alpha-1, 2.3.0
>
>
> Between HBase 1.x and 2.0, the RegionObserver pre*ScannerOpen coprocessors
> were significantly changed so that the coproc implementer no longer has
> access to the actual Scanner, just a ScanOptions object that can be changed
> in limited ways. This is safer and prevents resource leaks and other bugs.
> While ScanOptions provides support for changing TTL, KeepDeletedCells, and
> MaxVersions, a fourth column family config parameter, MinVersions, appears to
> have been missed. This prevents coproc implementers from changing MinVersions
> dynamically. An example of this is PHOENIX-5645, which in the forthcoming
> Phoenix 4.16 (based on HBase 1.x) will allow users to configure a moving
> window where all versions are kept, and thus point-in-time queries are safe.
> This cannot be put in the forthcoming Phoenix 5.1 (based on HBase 2.1 and
> 2.2) because of the coproc changes.
> Relatedly, preStoreScannerOpen lacks access to the Scan in HBase 2.0 and up.
> This prevents coprocs from reading the Scan parameters to check if, for
> example, a Scan has set the max time to a point in the past, and thus needs
> to override KeepDeletedCells. This can lead to incorrect behavior when doing
> point-in-time queries or using transactional engines that treat physically
> committed HBase writes as logically uncommitted parts of a transaction. It's
> also a correctness problem for PHOENIX-5645. Please note that only
> _read-only_ access to the Scan from the store scanner coproc hook is in scope
> for this change.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)