[ https://issues.apache.org/jira/browse/HADOOP-1579?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12511287 ]
James Kennedy commented on HADOOP-1579: --------------------------------------- Rather than extension, i recommend that you implement WhileMatchRowFilter as a RowFilterInterface decorator. Let it wrap any RowFilterInterface and apply the while-matches logic on top of it. That way it can be applied to any filter, not just regexp. Basically all it has to do is make filterAllRemaining() always return true after it's wrapped filter returns true for any of the filter methods. RowFilterInterface whileMatchRegExpFilter = new WhileMatchRowFilter(new RegExpRowFilter("com.google.*")); > [hbase] Add new WhileMatchRowFilter and StopRowFilter filters > ------------------------------------------------------------- > > Key: HADOOP-1579 > URL: https://issues.apache.org/jira/browse/HADOOP-1579 > Project: Hadoop > Issue Type: New Feature > Components: contrib/hbase > Reporter: Izaak Rubin > Priority: Minor > Attachments: HADOOP-1579.patch > > > I've created two additional filters for HBase: WhileMatchRowFilter and > StopRowFilter. WhileMatchRowFilter is an extension of RegExpRowFilter; it > also filters rows based on whether they match a specified regex. However, > unlike its parent, WhileMatchRowFilter filters everything after it's first > filtered row - once a row fails to match regex or column specifications, > filterAllRemaining() always returns true. This type of functionality will be > useful when filtering for a set of adjacent rows that match a certain regex > (as opposed to every row that matches that regex). > StopRowFilter filters out every row greater than or equal to a specified > rowKey (the stopRow). The filter assumes that the rowKeys it receives are in > alphabetical order, so once a key greater than the stopRow is encountered > filterAllRemaining() will return true. StopRowFilter will be useful for > alphabetical filtering. > Both filters come with JUnit tests, namely TestWhileMatchRowFilter and > TestStopRowFilter. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.