lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Uwe Schindler (JIRA)" <j...@apache.org>
Subject [jira] [Issue Comment Edited] (LUCENE-1768) NumericRange support for new query parser
Date Fri, 10 Jun 2011 17:49:59 GMT

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

Uwe Schindler edited comment on LUCENE-1768 at 6/10/11 5:48 PM:
----------------------------------------------------------------

One small thing I have seen after applying your patch:
The code guidelines of Lucene require no TABS but two whitespace to indent. We have a code
style available for Eclipse and IDEA in the dev-tools folder (below trunk). You only have
to install it.

Also you are using Java 6 interface overrides, so the code does not compile with Java 5 (unfortunately
this is a bug in Java 6's javac, as it does not complain when in "-source 1.5" mode). In Java
5 compatible code it is not allowed to add @Override to methods implemented for interfaces:

{noformat}
common.compile-core:
    [mkdir] Created dir: C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\build\contrib\queryparser\classes\java
    [javac] Compiling 175 source files to C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\build\contrib\queryparser\classes\java
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\core\nodes\FieldQueryNode.java:182:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\core\nodes\FieldQueryNode.java:187:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\config\NumericFieldConfigListener.java:21:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\AbstractRangeQueryNode.java:17:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\AbstractRangeQueryNode.java:32:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\AbstractRangeQueryNode.java:79:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\NumericQueryNode.java:20:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\NumericQueryNode.java:25:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\NumericQueryNode.java:35:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\NumericQueryNode.java:52:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\nodes\NumericQueryNode.java:57:
method does not override a method from its superclass
    [javac]     @Override
    [javac]          ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\standard\parser\JavaCharStream.java:367:
warning: [dep-ann] deprecated name isnt annotated with @Deprecated
    [javac]   public int getEndColumn() {
    [javac]              ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\surround\parser\CharStream.java:34:
warning: [dep-ann] deprecated name isnt annotated with @Deprecated
    [javac]   int getColumn();
    [javac]       ^
    [javac] C:\Users\Uwe Schindler\Projects\lucene\trunk-lusolr2\lucene\contrib\queryparser\src\java\org\apache\lucene\queryParser\surround\parser\CharStream.java:41:
warning: [dep-ann] deprecated name isnt annotated with @Deprecated
    [javac]   int getLine();
    [javac]       ^
    [javac] Note: Some input files use or override a deprecated API.
    [javac] Note: Recompile with -Xlint:deprecation for details.
    [javac] 11 errors
    [javac] 3 warnings
{noformat}

With Java 6 the code compiles, but some tests fail to work. I assume its simply because of
the work-in-progress,

      was (Author: thetaphi):
    One small thing I have seen after applying your patch:
The code guidelines of Lucene require no TABS but two whitespace to indent. We have a code
style available for Eclipse and IDEA in the dev-tools folder (below trunk). You only have
to install it.
  
> NumericRange support for new query parser
> -----------------------------------------
>
>                 Key: LUCENE-1768
>                 URL: https://issues.apache.org/jira/browse/LUCENE-1768
>             Project: Lucene - Java
>          Issue Type: New Feature
>          Components: core/queryparser
>    Affects Versions: 2.9
>            Reporter: Uwe Schindler
>            Assignee: Adriano Crestani
>              Labels: contrib, gsoc, gsoc2011, lucene-gsoc-11, mentor
>             Fix For: 4.0
>
>         Attachments: week1.patch, week2.patch
>
>
> It would be good to specify some type of "schema" for the query parser in future, to
automatically create NumericRangeQuery for different numeric types? It would then be possible
to index a numeric value (double,float,long,int) using NumericField and then the query parser
knows, which type of field this is and so it correctly creates a NumericRangeQuery for strings
like "[1.567..*]" or "(1.787..19.5]".
> There is currently no way to extract if a field is numeric from the index, so the user
will have to configure the FieldConfig objects in the ConfigHandler. But if this is done,
it will not be that difficult to implement the rest.
> The only difference between the current handling of RangeQuery is then the instantiation
of the correct Query type and conversion of the entered numeric values (simple Number.valueOf(...)
cast of the user entered numbers). Evenerything else is identical, NumericRangeQuery also
supports the MTQ rewrite modes (as it is a MTQ).
> Another thing is a change in Date semantics. There are some strange flags in the current
parser that tells it how to handle dates.

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

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


Mime
View raw message