[
https://issues.apache.org/jira/browse/HBASE-584?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12591399#action_12591399
]
Clint Morgan commented on HBASE-584:
------------------------------------
Yes, I see the reasoning for the API policy, etc.
Please reread my previous comment.
>From a practical point of view, I don't understand how you plan to add new
>methods to an interface and still think that a users RowFilter's
>implementation would work. Adding new methods to the interface, will cause a
>compile failure regardless of deprecated tags. (Unless we can provide default
>implementations (eg that delegate to old methods) in an abstract class. But
>there is no such Abstract class).
What am I missing?
> Names in the filter interface are confusing
> -------------------------------------------
>
> Key: HBASE-584
> URL: https://issues.apache.org/jira/browse/HBASE-584
> Project: Hadoop HBase
> Issue Type: Improvement
> Components: filters
> Reporter: Clint Morgan
> Assignee: Clint Morgan
> Priority: Minor
> Attachments: hbase-584.patch
>
>
> I don't like the names of the filter methods in RowFilterInterface. They
> don't really tell how the methods are being used in the implementation of
> scanners.
> I'd like to change:
> - filter(Text) to filterRow(...)
> - filter(Text, Text, byte[]) to filterColumn(...)
> and the worst one is
> - filterNotNull(SortedMap<Text, byte[]>). This should be filterRow(Text,
> SortedMap<Text, byte[]>) (so we add the row key/).
> It may be nice to have timestamps in the methods as well?
> Also the java doc could be cleaned and improved to tell how the filtering is
> implemented (check rows keys first, then check each individual columns,
> finally check the assembled row)
> Upon positive feedback, and I'll create a patch.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.