You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Michael Busch (JIRA)" <ji...@apache.org> on 2006/11/21 00:59:06 UTC

[jira] Updated: (LUCENE-543) Wildcard query with no wildcard characters in the term throws StringIndexOutOfBounds exception

     [ http://issues.apache.org/jira/browse/LUCENE-543?page=all ]

Michael Busch updated LUCENE-543:
---------------------------------

    Attachment: lucene543.patch

Overwrites rewrite() in WildcardQuery so that it returns a TermQuery if and only if the term does not contain a wildcard character. I also added a new test to TestWildcard that fails with the old version and passes with the patch.

All units tests pass and the patch compiles with a 1.4 JVM ;-)

> Wildcard query with no wildcard characters in the term throws StringIndexOutOfBounds exception
> ----------------------------------------------------------------------------------------------
>
>                 Key: LUCENE-543
>                 URL: http://issues.apache.org/jira/browse/LUCENE-543
>             Project: Lucene - Java
>          Issue Type: Improvement
>          Components: Search
>    Affects Versions: 1.9
>         Environment: linux and windows, JRE 1.4.2_06 Lucene 1.9.1
>            Reporter: Erick Erickson
>         Assigned To: Michael Busch
>            Priority: Minor
>         Attachments: lucene543.patch
>
>
> Query q1 = new WildcardQuery(new Term("Text", "a"));
> Hits hits = searcher.search(q1);
> Caught Exception
> java.lang.StringIndexOutOfBoundsException : String index out of range: -1
>     at java.lang.String.substring(Unknown Source)
>     at org.apache.lucene.search.WildcardTermEnum.<init>(WildcardTermEnum.java:65)
>     at org.apache.lucene.search.WildcardQuery.getEnum (WildcardQuery.java:38)
>     at org.apache.lucene.search.MultiTermQuery.rewrite(MultiTermQuery.java:54)
>     at org.apache.lucene.search.IndexSearcher.rewrite(IndexSearcher.java:137)
>     at org.apache.lucene.search.Query.weight (Query.java:92)
>     at org.apache.lucene.search.Hits.<init>(Hits.java:41)
>     at org.apache.lucene.search.Searcher.search(Searcher.java:44)
>     at org.apache.lucene.search.Searcher.search(Searcher.java:36)
>     at QuickTest.main(QuickTest.java:45)
> From Erik Hatcher
> Feel free to log this as a bug report in our JIRA issue tracker.  It
> seems like a reasonable change to make, such that a WildcardQuery
> without a wildcard character would behave like TermQuery.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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