Return-Path: Delivered-To: apmail-lucene-hadoop-dev-archive@locus.apache.org Received: (qmail 26334 invoked from network); 21 Jul 2007 03:55:32 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 21 Jul 2007 03:55:32 -0000 Received: (qmail 41251 invoked by uid 500); 21 Jul 2007 03:55:33 -0000 Delivered-To: apmail-lucene-hadoop-dev-archive@lucene.apache.org Received: (qmail 41221 invoked by uid 500); 21 Jul 2007 03:55:33 -0000 Mailing-List: contact hadoop-dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: hadoop-dev@lucene.apache.org Delivered-To: mailing list hadoop-dev@lucene.apache.org Received: (qmail 41212 invoked by uid 99); 21 Jul 2007 03:55:32 -0000 Received: from herse.apache.org (HELO herse.apache.org) (140.211.11.133) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 20 Jul 2007 20:55:32 -0700 X-ASF-Spam-Status: No, hits=-100.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO brutus.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 20 Jul 2007 20:55:30 -0700 Received: from brutus (localhost [127.0.0.1]) by brutus.apache.org (Postfix) with ESMTP id 6C9E7714211 for ; Fri, 20 Jul 2007 20:55:10 -0700 (PDT) Message-ID: <19410189.1184990110434.JavaMail.jira@brutus> Date: Fri, 20 Jul 2007 20:55:10 -0700 (PDT) From: "Hadoop QA (JIRA)" To: hadoop-dev@lucene.apache.org Subject: [jira] Commented: (HADOOP-1606) [hbase] Updated Implementation of RowFilterSet, RowFilterInterface In-Reply-To: <31816371.1184274965091.JavaMail.jira@brutus> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Virus-Checked: Checked by ClamAV on apache.org [ https://issues.apache.org/jira/browse/HADOOP-1606?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12514383 ] Hadoop QA commented on HADOOP-1606: ----------------------------------- +1 http://issues.apache.org/jira/secure/attachment/12362250/HADOOP-1606-v6.patch applied and successfully tested against trunk revision r558150. Test results: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/444/testReport/ Console output: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/444/console > [hbase] Updated Implementation of RowFilterSet, RowFilterInterface > ------------------------------------------------------------------ > > Key: HADOOP-1606 > URL: https://issues.apache.org/jira/browse/HADOOP-1606 > Project: Hadoop > Issue Type: Improvement > Components: contrib/hbase > Reporter: Izaak Rubin > Assignee: stack > Priority: Minor > Attachments: HADOOP-1606-v2.patch, HADOOP-1606-v3.patch, HADOOP-1606-v4.patch, HADOOP-1606-v5.patch, HADOOP-1606-v6.patch, HADOOP-1606.patch > > > Unit tests on RowFilterSet revealed a problem with it's handling of nested state-maintaining filters. RowFilterSet returned as soon as possible for its implementations of filter and filterNotNull. This came at the cost of it not always calling every one of it's filters. Skipping these filters was problematic, particularly when a filter changes it's state when called to filter. As a result, later calls to filterAllRemaining() were non-deterministic (with an unordered set) or dependent on set ordering at best. > With much input from Michael Stack and James Kennedy, the problem has been resolved as follows: the RowFilterInterface has been updated to contain a boolean processAlways() method that states whether or not this filter MUST be called in any call to the filter hierarchy. Filters that require their state to be updated immediately upon every filter call (via a call to their filter methods), such as WhileMatchRowFilter (see HADOOP-1579), will return true for processAlways(). RowFilterSet will ensure that these filters always have their filtering methods called, whether or not they affect the final decision. > The patch proposed by this issue will make the necessary changes to RowFilterSet and RowFilterInterface, in addition to adding the tests for RowFilterSet. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.