Add &debug=all to your query, that'll show you exactly how the scores are calculated. But the most obvious thing is that you're boosting on the titleName field in your query, which for doc 123 does NOT contain "phone" so I suspect the fact that "phone" is in the titleName field for 122 is overriding the index-time boost, especially since "phone" appears in both title and description for 122.
Best Erick On Fri, Aug 2, 2013 at 7:53 AM, dhaivat dave <dhaiva...@gmail.com> wrote: > Hello All, > > I want to boost certain products on particular keywords. for this i am > using solr's indexing time boosting feature. i have given index time > boosting with "1.0" value to all documents in my solr indices. now what i > am doing is when user want to boost certain product i just increase index > time boosting value to 10.0 of that particular product only. now the > problem is: i have also used query time boosting (for boosting documents > when searched term found directly in title field) and so even i have > increase the indexing time boosting value of the particular product it > appears after query time boosted product. > > consider following example: > > - I have indexed couple document related to mobile phone (nokia,samsung and > so on) > - All the documents contains the title field which contains following value > *Doc1:* > *==* > <doc boost="1.0"> > <id>122</id> > <titleName>Nokia Phone 2610 </titleName> > <description>Suprb phone</description> > .. > </otherField> > </doc> > > *Doc2: * > * ==* > <doc boost="1.0"> > <id>123 > <titleName>Samsung smwer233</titleName> > <description>Samsung phone</description> > .. > </otherfield> > </doc> > > - now if some one searches for "Phone" it will display first "Nokia Phone" > second "Samsung Phone" (by searching in <titleName> and <description> > field) > - to display "Samsung" before "Nokia" i have boost the index time value , > some thing like below > > <doc boost="5.0"> > <id>123 </id> > <titleName>Samsung smwer233</titleName> > <description>Samsung phone</description> > .. > </otherfield> > </doc> > > - i am also using boosting at query time to boost the document which has > found terms in <titleName> field > *"titleName:phone^4"* > > now even though i have higher boosting in samsung mobile it displays nokia > mobile first and then samsung mobile. > > can any one please guide how can i boost particular document using index > time boosting(it should appear first even though i am applying query time > boosting). > > Many Thanks, > Dhaivat Dave >