Hello guys sorry for late response. @steve I am using solr 5.2 . @greg i am using default mm from config file(According to me it is default mm is 1).
Regards, Abhishek On Tue, Apr 4, 2017 at 5:27 AM, Greg Pendlebury <greg.pendleb...@gmail.com> wrote: > eDismax uses 'mm', so knowing what that has been set to is important, or if > it has been left unset/default you would need to consider whether 'q.op' > has been set. Or the default operator from the config file. > > Ta, > Greg > > > On 3 April 2017 at 23:56, Steve Rowe <sar...@gmail.com> wrote: > > > Hi Abhishek, > > > > Which version of Solr are you using? > > > > I can see that the parsed queries are different, but they’re also very > > similar, and there’s a lot of detail there - can you be more specific > about > > what the problem is? > > > > -- > > Steve > > www.lucidworks.com > > > > > On Apr 3, 2017, at 4:54 AM, Abhishek Mishra <solrmis...@gmail.com> > > wrote: > > > > > > Hi all > > > i am running solr query with these parameter > > > > > > bf: "sum(product(new_popularity,100),if(exists(third_price),50,0))" > > > qf: "test_product^5 category_path_tf^4 product_id gender" > > > q: "handbags between rs150 and rs 400" > > > defType: "edismax" > > > > > > parsed query is like below one > > > > > > for q:- > > > (+(DisjunctionMaxQuery((category_path_tf:handbags^4.0 | > gender:handbag | > > > test_product:handbag^5.0 | product_id:handbags)) > > > DisjunctionMaxQuery((category_path_tf:between^4.0 | gender:between | > > > test_product:between^5.0 | product_id:between)) > > > +DisjunctionMaxQuery((category_path_tf:rs150^4.0 | gender:rs150 | > > > test_product:rs150^5.0 | product_id:rs150)) > > > +DisjunctionMaxQuery((category_path_tf:rs^4.0 | gender:rs | > > > test_product:rs^5.0 | product_id:rs)) > > > DisjunctionMaxQuery((category_path_tf:400^4.0 | gender:400 | > > > test_product:400^5.0 | product_id:400))) DisjunctionMaxQuery(("":" > > handbags > > > between rs150 ? rs 400")) (DisjunctionMaxQuery(("":"handbags > between")) > > > DisjunctionMaxQuery(("":"between rs150")) DisjunctionMaxQuery(("":"rs > > > 400"))) (DisjunctionMaxQuery(("":"handbags between rs150")) > > > DisjunctionMaxQuery(("":"between rs150")) > > DisjunctionMaxQuery(("":"rs150 ? > > > rs")) DisjunctionMaxQuery(("":"? rs 400"))) > > > FunctionQuery(sum(product(float(new_popularity),const( > > 100)),if(exists(float(third_price)),const(50),const(0)))))/no_coord > > > > > > but for dismax parser it is working perfect: > > > > > > (+(DisjunctionMaxQuery((category_path_tf:handbags^4.0 | > gender:handbag | > > > test_product:handbag^5.0 | product_id:handbags)) > > > DisjunctionMaxQuery((category_path_tf:between^4.0 | gender:between | > > > test_product:between^5.0 | product_id:between)) > > > DisjunctionMaxQuery((category_path_tf:rs150^4.0 | gender:rs150 | > > > test_product:rs150^5.0 | product_id:rs150)) > > > DisjunctionMaxQuery((product_id:and)) > > > DisjunctionMaxQuery((category_path_tf:rs^4.0 | gender:rs | > > > test_product:rs^5.0 | product_id:rs)) > > > DisjunctionMaxQuery((category_path_tf:400^4.0 | gender:400 | > > > test_product:400^5.0 | product_id:400))) DisjunctionMaxQuery(("":" > > handbags > > > between rs150 ? rs 400")) > > > FunctionQuery(sum(product(float(new_popularity),const( > > 100)),if(exists(float(third_price)),const(50),const(0)))))/no_coord > > > > > > > > > *according to me difference between dismax and edismax is based on some > > > extra features plus working of boosting fucntions.* > > > > > > > > > > > > Regards, > > > Abhishek > > > > >