Just tested to make sure. queryNorm is changing after you add bq parameter. For 
example : 0.00317763 = queryNorm becomes         0.0028020076 = queryNorm. 

Since all scores are multiplied by this queryNorm factor, score of a document ( 
even if it is not effected/boosted by bq) changes.

before &bq=SOURCE:Haberler^100
<doc>
<float name="score">5.246903</float>
<str name="ID">4529806</str>
<str name="SOURCE">EnSonHaber</str>
</doc>

after &bq=SOURCE:Haberler^100
<doc>
<float name="score">4.626675</float>
<str name="ID">4529806</str>
<str name="SOURCE">EnSonHaber</str>
</doc>

Does that makes sense? 

> > If the bq is only supposed apply the
> > boost when the field value is greater
> > than 0.01 why would trying another query make sure this
> is
> > working.
> > 
> > Its applying the boost to all the fields, yes when the
> boost
> > is high enough
> > most of documents with a value GT 0.01 show up first
> however
> > since it is
> > applying the boost to all the documents sometimes
> documents
> > without a value
> > in this field appear before those that do.
> 
> If boosting is applied to all documents, then why result
> order is changing?
> 
> Sometimes documents without a value can show-up before
> because there are other factors that contribute score
> calculation. 
> 
> http://lucene.apache.org/core/3_6_0/api/all/org/apache/lucene/search/Similarity.html
> 
> If you add &debugQuery=on, you can see detailed
> explanation about how calculation is done.
> 

Reply via email to