lucene-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Scott Smith <ssm...@mainstreamdata.com>
Subject classic.QueryParser - bug or new behavior?
Date Sun, 19 May 2013 18:50:42 GMT
I just upgraded from lucene 4.1 to 4.2.1.  We believe we are seeing some different behavior.

I'm using org.apache.lucene.queryparser.classic.QueryParser.  If I pass the string "20110920/EXPIRED"
(w/o quotes) to the parser, I get:

org.apache.lucene.queryparser.classic.ParseException: Cannot parse '20110920/EXPIRED': Lexical
error at line 1, column 17.  Encountered: <EOF> after : "/EXPIRED"
       at org.apache.lucene.queryparser.classic.QueryParserBase.parse(QueryParserBase.java:131)

We believe this used to work.

I tried googling for this and found something that said I should use QueryParser.escape()
on the string before passing it to the parser.  However, that seems to break phrase queries
(e.g., "John Smith" - with the quotes; I assume it's escaping the double-quotes and doesn't
realize it's a phrase).

Since it is a forward slash, I'm confused why it would need escaping of any of the characters
in the string with the "/EXPIRED".

Has anyone seen this?

Scott

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message