ParametricRangeQueryNodeProcessor uses incorrect logic at the lower bound
-------------------------------------------------------------------------

                 Key: LUCENE-3353
                 URL: https://issues.apache.org/jira/browse/LUCENE-3353
             Project: Lucene - Java
          Issue Type: Bug
          Components: modules/queryparser
    Affects Versions: 3.3
            Reporter: Trejkaz


ParametricRangeQueryNodeProcessor currently works as follows:

# If the operator was LE or GE, set inclusive = true.
# Set up a calendar
# If inclusive, set the second time to 23:59:59:999
# Convert that to a string using the DateResolution.

The problem is, this breaks for *exclusive* queries.  For instance, if the user 
types in {20100110 TO 20100120} they would expect to get the 10th to the 20th 
exclusive, i.e. the 11th to the 19th.  But in reality, the 10th will be 
*inclusive*.

To get an actually-exclusive range for the lower bound, the time should be set 
to 23:59:59:999, much the same as what is done for the inclusive upper bound.

I suspect the original query parser has the same issue, though possibly in 
different words.


--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to