Solr: fieldNorm diferente por documento, sem aumento de documento

Desejo que meus resultados da pesquisa ordenem por pontuação, o que eles estão fazendo, mas a pontuação está sendo calculada incorretamente. Isto é, não necessariamenteindevidamente, mas diferente do esperado e não sei por que. Meu objetivo é remover o que estiver alterando a pontuação.

Se eu realizar uma pesquisa que corresponda a dois objetos (em que o ObjectA deve ter uma pontuação maior que o ObjectB), o ObjectB será retornado primeiro.

Digamos, neste exemplo, que minha consulta é um termo único: "maçãs".

Título do ObjectA: "maçãs são maçãs" (2/3 termos)
Descrição do ObjectA: "Havia maçãs nas maçãs-maçãs e agora as maçãs foram todas as maçãs por todo o lado!" (6/18 termos)
Título do ObjectB: "maçãs são ótimas" (1/3 termos)
Descrição do ObjectB: "Havia maçãs na sala de maçãs e agora as maçãs estavam ruins por todo o lado!" (18/4 termos)

O campo de título não tem aumento (ou melhor, um aumento de 1) e o campo de descrição possui um aumento de 0,8. Não especifiquei um aumento de documento por meio do solrconfig.xml ou da consulta pela qual estou passando. Se houver outra maneira de especificar um aumento de documento, é possível que eu esteja perdendo um.

Depois de analisar oexplain impressão, parece ObjectAé calcular corretamente uma pontuação mais alta que o ObjectB, exatamente como eu quero, exceto1 diferença: o fieldNorm do título do ObjectB é sempre maior que o do ObjectA.

Aqui segue oexplain imprimir. Só para você saber: o campo do título émditem5_tns e o campo de descrição émditem7_tns:

ObjectB:
1.3327172 = (MATCH) sum of:
  1.0352166 = (MATCH) max plus 0.1 times others of:
    0.9766194 = (MATCH) weight(mditem5_tns:appl in 0), product of:
      0.53929156 = queryWeight(mditem5_tns:appl), product of:
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.2977981 = queryNorm
      1.8109303 = (MATCH) fieldWeight(mditem5_tns:appl in 0), product of:
        1.0 = tf(termFreq(mditem5_tns:appl)=1)
        1.8109303 = idf(docFreq=3, maxDocs=9)
        1.0 = fieldNorm(field=mditem5_tns, doc=0)
    0.58597165 = (MATCH) weight(mditem7_tns:appl^0.8 in 0), product of:
      0.43143326 = queryWeight(mditem7_tns:appl^0.8), product of:
        0.8 = boost
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.2977981 = queryNorm
      1.3581977 = (MATCH) fieldWeight(mditem7_tns:appl in 0), product of:
        2.0 = tf(termFreq(mditem7_tns:appl)=4)
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.375 = fieldNorm(field=mditem7_tns, doc=0)
  0.2975006 = (MATCH) FunctionQuery(1000.0/(1.0*float(top(rord(lastmodified)))+1000.0)), product of:
    0.999001 = 1000.0/(1.0*float(1)+1000.0)
    1.0 = boost
    0.2977981 = queryNorm

ObjectA:
1.2324848 = (MATCH) sum of:
  0.93498427 = (MATCH) max plus 0.1 times others of:
    0.8632177 = (MATCH) weight(mditem5_tns:appl in 0), product of:
      0.53929156 = queryWeight(mditem5_tns:appl), product of:
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.2977981 = queryNorm
      1.6006513 = (MATCH) fieldWeight(mditem5_tns:appl in 0), product of:
        1.4142135 = tf(termFreq(mditem5_tns:appl)=2)
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.625 = fieldNorm(field=mditem5_tns, doc=0)
    0.7176658 = (MATCH) weight(mditem7_tns:appl^0.8 in 0), product of:
      0.43143326 = queryWeight(mditem7_tns:appl^0.8), product of:
        0.8 = boost
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.2977981 = queryNorm
      1.6634457 = (MATCH) fieldWeight(mditem7_tns:appl in 0), product of:
        2.4494898 = tf(termFreq(mditem7_tns:appl)=6)
        1.8109303 = idf(docFreq=3, maxDocs=9)
        0.375 = fieldNorm(field=mditem7_tns, doc=0)
  0.2975006 = (MATCH) FunctionQuery(1000.0/(1.0*float(top(rord(lastmodified)))+1000.0)), product of:
    0.999001 = 1000.0/(1.0*float(1)+1000.0)
    1.0 = boost
    0.2977981 = queryNorm

questionAnswers(2)

yourAnswerToTheQuestion