[
https://issues.apache.org/jira/browse/HBASE-8809?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13695547#comment-13695547
]
Jesse Yates commented on HBASE-8809:
------------------------------------
Wow, loving the turn around Lars! LTGM... this should also cover the case of
untimestampted row Delete (which retain a ts = Long.MAX_VALUE) too, right?
> Include deletes in the scan (setRaw) method does not respect the time range
> or the filter
> -----------------------------------------------------------------------------------------
>
> Key: HBASE-8809
> URL: https://issues.apache.org/jira/browse/HBASE-8809
> Project: HBase
> Issue Type: Bug
> Components: Scanners
> Reporter: Vasu Mariyala
> Assignee: Lars Hofhansl
> Fix For: 0.98.0, 0.95.2, 0.94.10
>
> Attachments: 8809-0.94.txt, 8809-trunk.txt
>
>
> If a row has been deleted at time stamp 'T' and a scan with time range (0,
> T-1) is executed, it still returns the delete marker at time stamp 'T'. It is
> because of the code in ScanQueryMatcher.java
> {code}
> if (retainDeletesInOutput
> || (!isUserScan && (EnvironmentEdgeManager.currentTimeMillis() -
> timestamp) <= timeToPurgeDeletes)
> || kv.getMemstoreTS() > maxReadPointToTrackVersions) {
> // always include or it is not time yet to check whether it is OK
> // to purge deltes or not
> return MatchCode.INCLUDE;
> }
> {code}
> The assumption is scan (even with setRaw is set to true) should respect the
> filters and the time range specified.
> Please let me know if you think this behavior can be changed so that I can
> provide a patch for it.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira