The fix in edismax was made just a few days (6/28) before the formal
announcement of 4.0-ALPHA (7/3), but unfortunately the fix came a few days
after the cutoff for 4.0-ALPHA (6/25).
See:
https://issues.apache.org/jira/browse/SOLR-3467
(That issue should probably be annotated to indicate that it "affects"
4.0-ALPHA.)
-- Jack Krupansky
-----Original Message-----
From: Alexandre Rafalovitch
Sent: Thursday, September 06, 2012 10:13 AM
To: solr-user@lucene.apache.org
Subject: Re: Solr 4.0alpha: edismax complaints on certain characters
I am on 4.0 alpha. Maybe it was fixed in beta. But I am most
definitely seeing this in edismax. If I get rid of / and use
debugQuery, I get:
'responseHeader'=>{
'status'=>0,
'QTime'=>14,
'params'=>{
'debugQuery'=>'true',
'indent'=>'true',
'q'=>'foobar',
'qf'=>'TitleEN DescEN',
'wt'=>'ruby',
'defType'=>'edismax'}},
'response'=>{'numFound'=>0,'start'=>0,'docs'=>[]
},
'debug'=>{
'rawquerystring'=>'foobar',
'querystring'=>'foobar',
'parsedquery'=>'(+DisjunctionMaxQuery((DescEN:foobar |
TitleEN:foobar)))/no_coord',
'parsedquery_toString'=>'+(DescEN:foobar | TitleEN:foobar)',
'explain'=>{},
'QParser'=>'ExtendedDismaxQParser',
....
I'll check beta on my machine by tomorrow.
Regards,
Alex.
Personal blog: http://blog.outerthoughts.com/
LinkedIn: http://www.linkedin.com/in/alexandrerafalovitch
- Time is the quality of nature that keeps events from happening all
at once. Lately, it doesn't seem to be working. (Anonymous - via GTD
book)
On Thu, Sep 6, 2012 at 10:06 AM, Jack Krupansky <j...@basetechnology.com>
wrote:
That's what I was thinking, but when I tried foo/bar in Solr 3.6 and
4.0-BETA it was working fine - it split the term and generated the proper
query without any error.
I think the problem is if you use the default Lucene query parser, not
edismax. I removed &defType==edismax from my query request and the problem
reproduces.
My two test queries:
http://localhost:8983/solr/select/?debugQuery=true&defType=edismax&qf=features&q=foo/bar
http://localhost:8983/solr/select/?debugQuery=true&df=features&q=foo/bar
The first works; the second fails as reported (in 4.0-BETA, but works in
3.6).
-- Jack Krupansky
-----Original Message----- From: Yonik Seeley
Sent: Thursday, September 06, 2012 9:53 AM
To: solr-user@lucene.apache.org
Subject: Re: Solr 4.0alpha: edismax complaints on certain characters
I believe this is caused by the regex support in
https://issues.apache.org/jira/browse/LUCENE-2039
It certainly seems wrong to interpret a slash in the middle of the
word as the start of a regex, so I've reopened the issue.
-Yonik
http://lucidworks.com
On Thu, Sep 6, 2012 at 9:34 AM, Alexandre Rafalovitch
<arafa...@gmail.com> wrote:
Hello,
I was under the impression that edismax was supposed to be crash proof
and just ignore bad syntax. But I am either misconfiguring it or hit a
weird bug. I basically searched for text containing '/' and got this:
{
'responseHeader'=>{
'status'=>400,
'QTime'=>9,
'params'=>{
'qf'=>'TitleEN DescEN',
'indent'=>'true',
'wt'=>'ruby',
'q'=>'foo/bar',
'defType'=>'edismax'}},
'error'=>{
'msg'=>'org.apache.lucene.queryparser.classic.ParseException:
Cannot parse \'foo/bar \': Lexical error at line 1, column 9.
Encountered: <EOF> after : "/bar "',
'code'=>400}}
Is that normal? If it is, is there a known list of characters I need
to escape or do I just have to catch the exception and tell user to
not do this again?
Regards,
Alex.
Personal blog: http://blog.outerthoughts.com/
LinkedIn: http://www.linkedin.com/in/alexandrerafalovitch
- Time is the quality of nature that keeps events from happening all
at once. Lately, it doesn't seem to be working. (Anonymous - via GTD
book)