Hi, I was getting very bad results for some queries & after a little research & a lot of searching on the mailing list, I have the following information. Could someone please help me figure out whats wrong.
Exact phrase matches in fields with higher boost were ranking lower than some non exact matches in 1 other field. (I change th userQuery => "userQuery"^4 userQuery .. any other ideas for ranking exact matches higher ?) The symptom: Very high fieldNorm for field A.(explain output pasted below) The boost i am applying to the troublesome field is 3.5 & the max boost applied per doc is 1.8 Given that information, the very high fieldNorm is very surprising to me. Based on what I read, FieldNorm = 1 / sqrt(sum of terms) , possibly multiplied by field boost values. My suspicions: There may be something wrong with the way I add this field: fieldName = "A'; fieldConfig = getConfig(fieldName); for (Collection of values){ Field thisField = new Field(fieldName, value, fieldConfig.STORED, fieldConfig.INDEXED); thisField.setBoost(fieldConfig); doc.add(thisField); } which should basically lead to the "values" being appended, Am i making a mistake in the way I am adding fields ? The results which are showing up on top (having very high fieldnorm) have a lot of "values". Thanks a ton for any guidance you can provide. -mek Explain output: [java] 931523.7 = product of: [java] 6520665.5 = product of: [java] 1.9561996E7 = weight(A:william in 2994602), product of: [java] 4.5579695E-4 = queryWeight(A:william), product of: [java] 5.7101016 = idf(docFreq=62092) [java] 7.9822916E-5 = queryNorm [java] 4.2918224E10 = fieldWeight(A:william in 2994602), product of: [java] 1.0 = tf(termFreq(A:william)=1) [java] 5.7101016 = idf(docFreq=62092) [java] 7.5161928E9 = fieldNorm(field=A, doc=2994602) [java] 0.33333334 = coord(1/3) [java] 0.14285715 = coord(1/7)