Return-Path: X-Original-To: apmail-lucene-dev-archive@www.apache.org Delivered-To: apmail-lucene-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id CA86211D7B for ; Thu, 20 Feb 2014 17:23:27 +0000 (UTC) Received: (qmail 27574 invoked by uid 500); 20 Feb 2014 17:23:24 -0000 Delivered-To: apmail-lucene-dev-archive@lucene.apache.org Received: (qmail 27530 invoked by uid 500); 20 Feb 2014 17:23:24 -0000 Mailing-List: contact dev-help@lucene.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@lucene.apache.org Delivered-To: mailing list dev@lucene.apache.org Received: (qmail 27511 invoked by uid 99); 20 Feb 2014 17:23:23 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 20 Feb 2014 17:23:23 +0000 Date: Thu, 20 Feb 2014 17:23:23 +0000 (UTC) From: "Michael McCandless (JIRA)" To: dev@lucene.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (LUCENE-5092) join: don't expect all filters to be FixedBitSet instances MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/LUCENE-5092?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13907203#comment-13907203 ] Michael McCandless commented on LUCENE-5092: -------------------------------------------- I still think it's sort of crazy to let block join have such a wide impact on our APIs? If it's only block join that needs this special forwards/backwards iteration, maybe we should make it's own "thing" (separate from DIS/DISI) to do this? E.g. a FixedBitSetFactory that given an AtomicReaderContext produces a FixedBitSet, so that we stop "abusing" Filter for this purpose. > join: don't expect all filters to be FixedBitSet instances > ---------------------------------------------------------- > > Key: LUCENE-5092 > URL: https://issues.apache.org/jira/browse/LUCENE-5092 > Project: Lucene - Core > Issue Type: Improvement > Components: modules/join > Reporter: Adrien Grand > Assignee: Adrien Grand > Priority: Minor > Attachments: LUCENE-5092.patch > > > The join module throws exceptions when the parents filter isn't a FixedBitSet. The reason is that the join module relies on prevSetBit to find the first child document given a parent ID. > As suggested by Uwe and Paul Elschot on LUCENE-5081, we could fix it by exposing methods in the iterators to iterate backwards. When the join modules gets an iterator which isn't able to iterate backwards, it would just need to dump its content into another DocIdSet that supports backward iteration, FixedBitSet for example. -- This message was sent by Atlassian JIRA (v6.1.5#6160) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org For additional commands, e-mail: dev-help@lucene.apache.org