Re: edismax not working in a core

2012-07-18 Thread Erick Erickson
the ~2 is the mm parameter I'm pretty sure. So I'd guess your configuration has
a mm parameter set on the core that isn't doing what you want..

Best
Erick

On Tue, Jul 17, 2012 at 3:05 PM, Richard Frovarp rfrov...@apache.org wrote:
 On 07/14/2012 05:32 PM, Erick Erickson wrote:

 Really hard to say. Try executing your query on the cores with
 debugQuery=on and compare the parsed results (for this you
 can probably just ignore the explain bits of the output, concentrate
 on the parsed query).


 Okay, for the example core from the project, the query was:

 test OR samsung

 parsedquery:
 +(DisjunctionMaxQuery((id:test^10.0 | text:test^0.5 | cat:test^1.4 |
 manu:test^1.1 | name:test^1.2 | features:test | sku:test^1.5))
 DisjunctionMaxQuery((id:samsung^10.0 | text:samsung^0.5 | cat:samsung^1.4 |
 manu:samsung^1.1 | name:samsung^1.2 | features:samsung | sku:samsung^1.5)))

 For my core the query was:

 frovarp OR fee

 parsedquery:

 +((DisjunctionMaxQuery((content:fee | title:fee^5.0 | mainContent:fee^2.0))
 DisjunctionMaxQuery((content:frovarp | title:frovarp^5.0 |
 mainContent:frovarp^2.0)))~2)

 What is that ~2? That's the difference. The third core that works properly
 also doesn't have the ~2.


Re: edismax not working in a core

2012-07-18 Thread Richard Frovarp

On 07/18/2012 11:20 AM, Erick Erickson wrote:

the ~2 is the mm parameter I'm pretty sure. So I'd guess your configuration has
a mm parameter set on the core that isn't doing what you want..



I'm not setting the mm parameter or the q.op parameter. All three cores 
have a defaultOperator of OR. So I don't know where that would be coming 
from. However, if I specify a mm of 0, it appears to work just fine. 
I've added it as a default parameter to the select handler.


Thanks for pointing me in the right direction.

Richard


Re: edismax not working in a core

2012-07-18 Thread Richard Frovarp

On 07/18/2012 02:39 PM, Richard Frovarp wrote:

On 07/18/2012 11:20 AM, Erick Erickson wrote:

the ~2 is the mm parameter I'm pretty sure. So I'd guess your
configuration has
a mm parameter set on the core that isn't doing what you want..



I'm not setting the mm parameter or the q.op parameter. All three cores
have a defaultOperator of OR. So I don't know where that would be coming
from. However, if I specify a mm of 0, it appears to work just fine.
I've added it as a default parameter to the select handler.

Thanks for pointing me in the right direction.

Richard


Okay, that's wrong. Term boosting isn't working either, and what I did 
above just turns everything into an OR query.


I did figure out the problem, however. In the core that wasn't working, 
one of the query field names wasn't correct. No errors were ever thrown, 
it just made the query behave in a very odd way.


I finally figured it out after debugging each field independent of each 
other.


Re: edismax not working in a core

2012-07-17 Thread Richard Frovarp

On 07/14/2012 05:32 PM, Erick Erickson wrote:

Really hard to say. Try executing your query on the cores with
debugQuery=on and compare the parsed results (for this you
can probably just ignore the explain bits of the output, concentrate
on the parsed query).



Okay, for the example core from the project, the query was:

test OR samsung

parsedquery:
+(DisjunctionMaxQuery((id:test^10.0 | text:test^0.5 | cat:test^1.4 | 
manu:test^1.1 | name:test^1.2 | features:test | sku:test^1.5)) 
DisjunctionMaxQuery((id:samsung^10.0 | text:samsung^0.5 | 
cat:samsung^1.4 | manu:samsung^1.1 | name:samsung^1.2 | features:samsung 
| sku:samsung^1.5)))


For my core the query was:

frovarp OR fee

parsedquery:

+((DisjunctionMaxQuery((content:fee | title:fee^5.0 | 
mainContent:fee^2.0)) DisjunctionMaxQuery((content:frovarp | 
title:frovarp^5.0 | mainContent:frovarp^2.0)))~2)


What is that ~2? That's the difference. The third core that works 
properly also doesn't have the ~2.


Re: edismax not working in a core

2012-07-14 Thread Erick Erickson
Really hard to say. Try executing your query on the cores with
debugQuery=on and compare the parsed results (for this you
can probably just ignore the explain bits of the output, concentrate
on the parsed query).

Best
Erick

On Fri, Jul 13, 2012 at 11:25 AM, Richard Frovarp rfrov...@apache.org wrote:
 I'm having trouble with edismax not working in one of my cores. I have three
 cores up and running, including the demo in Solr 3.6 on Tomcat 7.0.27 on
 Java 1.6.

 I can't get edismax to work on one of those cores, and it's configured very
 similar to the demo, which does work. I have different fields, but overall
 I'm not doing much different. I'm testing using a query with OR in it to
 try to get a union. On two of the cores, I get the union, on my third one I
 get a much smaller set than either term should return. If I tell the
 misbehaving core to have a defType of lucene, that does honor the OR.

 What could I be possibly missing?

 Thanks,
 Richard


edismax not working in a core

2012-07-13 Thread Richard Frovarp
I'm having trouble with edismax not working in one of my cores. I have 
three cores up and running, including the demo in Solr 3.6 on Tomcat 
7.0.27 on Java 1.6.


I can't get edismax to work on one of those cores, and it's configured 
very similar to the demo, which does work. I have different fields, but 
overall I'm not doing much different. I'm testing using a query with 
OR in it to try to get a union. On two of the cores, I get the union, 
on my third one I get a much smaller set than either term should return. 
If I tell the misbehaving core to have a defType of lucene, that does 
honor the OR.


What could I be possibly missing?

Thanks,
Richard