You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Mark Miller (JIRA)" <ji...@apache.org> on 2008/11/13 00:47:44 UTC

[jira] Commented: (LUCENE-38) RangeQuery without lower term and inclusive=false skips blank fields

    [ https://issues.apache.org/jira/browse/LUCENE-38?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12647123#action_12647123 ] 

Mark Miller commented on LUCENE-38:
-----------------------------------

Does this need to be 'fixed' ? RangeQuery now uses the semantics from ConstantScoreRangeQuery, which decided that open ended sides of a range must be inclusive (and are converted as such if not). Is that acceptable and we close this bug? Or jump a hoop or two for this rather niche case?

> RangeQuery without lower term and inclusive=false skips blank fields
> --------------------------------------------------------------------
>
>                 Key: LUCENE-38
>                 URL: https://issues.apache.org/jira/browse/LUCENE-38
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: Search
>    Affects Versions: unspecified
>         Environment: Operating System: other
> Platform: Other
>            Reporter: Otis Gospodnetic
>            Assignee: Lucene Developers
>            Priority: Minor
>         Attachments: TestRangeQuery.patch
>
>
> This was reported by "James Ricci" <ja...@riccinursery.com> at:
> http://nagoya.apache.org/eyebrowse/ReadMsg?listName=lucene-user@jakarta.apache.org&msgNo=1835
> When you create a ranged query and omit the lower term, my expectation 
> would be that I would find everything less than the upper term. Now if I pass
> false for the inclusive term, then I would expect that I would find all
> terms less than the upper term excluding the upper term itself.
> What is happening in the case of lower_term=null, upper_term=x,
> inclusive=false is that empty strings are being excluded because 
> inclusive is set false, and the implementation of RangedQuery creates a default 
> lower term of Term(fieldName, ""). Since it's not inclusive, it excludes "". 
> This isn't what I intended, and I don't think it's what most people would 
> imagine RangedQuery would do in the case I've mentioned.
> I equate lower=null, upper=x, inclusive=false to Field < x. lower=null,
> upper=x, inclusive=true would be Field <= x. In both cases, the only
> difference should be whether or not Field = x is true for the query.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: java-dev-help@lucene.apache.org