Hi, I need to boost documents at runtime according to a set of roles and related ids. For instance I would have the fields: ceo:1234-abcd-5678-poiu tl:1111-abcd-5678-abc
and a set of boosts to apply a runtime, for instance ceo = 10 tl = 5 I don't want to do any complex operation with the weights and I am happy of boosting by the value of the most relevant role, in the previous case would be ceo. Since I use eDismax parser, the syntax I'd like to use would be: *bf*=if(*termfreq* (ceo,"85a09bd5-2ff2-464c-9bc5-33a38a7f1234"),3,if(termfreq(tl,"85a09bd5-2ff2-464c-9bc5-33a38a7123456"),2,1)) however I am worried about performance. My questions are: - In the bf parameter are FieldCache and DocValues used? - Is termfreq calculated all the time or we simply read the existing value? - increasing the number of clauses (for instance adding more nested if) what kind of impact would have on my performance? - My alternative would be to use the payload. Is that a better option and why? Thanks!!