: I want to show all documents with of a certain type. The documents
: should be ordered by the index time document boost.
...
: But in fact every document gets the same score:
:
: 0.99997306 = (MATCH) fieldWeight(doctype:music in 1), product of:
: 1.0 = tf(termFreq(doctype:music)=1)
: 0.99997306 = idf(docFreq=37138, maxDocs=37138)
: 1.0 = fieldNorm(field=doctype, doc=1)
Index boosts are folded into the fieldNorm. by the looks of it, you are
using omitNorms="true" on the field "doctype"
: Is there a better way to get a list of all documents (matching a simple
: "where clause) sorted by documents boost?
fieldNorms are very corse. In my opinion, if you have a
"weighting" you want to use to affect score sort, it's better to index
that weight as a numeric field, and explicitly factor it into the score
using a function query...
q={!boost b=yourWeightField v=$qq}&qq=doctype:music
More info...
https://lucene.apache.org/solr/api/org/apache/solr/search/BoostQParserPlugin.html
http://www.lucidimagination.com/blog/2011/06/20/solr-powered-isfdb-part-10/
https://github.com/lucidimagination/isfdb-solr/commit/75f830caa1a11fd97ab48d6428096cf63f53cb3b
-Hoss
|