Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
-
Reviewed
Description
There are various usecases and filter types where evaluating the filter before version are handled either do not make sense, or make filter handling more complicated.
Also see this comment in ScanQueryMatcher:
/** * Filters should be checked before checking column trackers. If we do * otherwise, as was previously being done, ColumnTracker may increment its * counter for even that KV which may be discarded later on by Filter. This * would lead to incorrect results in certain cases. */
So we had Filters after the column trackers (which do the version checking), and then moved it.
Should be at the discretion of the Filter.
Could either add a new method to FilterBase (maybe excludeVersions() or something). Or have a new Filter wrapper (like WhileMatchFilter), that should only be used as outmost filter and indicates the same (maybe ExcludeVersionsFilter).
See latest comments on HBASE-5229 for motivation.
Attachments
Attachments
Issue Links
- is related to
-
HBASE-5229 Provide basic building blocks for "multi-row" local transactions.
- Closed
- relates to
-
HBASE-8930 Filter evaluates KVs outside requested columns
- Closed
-
HBASE-6954 Column-counting filters can accept multiple versions of a column
- Closed