Hello, If an index has (many) deleted docs and not optimized, when I set hl.requireFieldMatch=true, highlight doesn't work sometimes.
cause: If hl.requireFieldMatch set to true, DefaultSolrHighlight.getQueryScorer() uses QueryScorer(Query,IndexReader,String) constructor in Lucene highlighter. Then the constructor calls getIdfWeightedTerms() to get an array of WeightedTerm. In getIdfWeightedTerms(), idf is calculated to get weighted terms. And the calculated idf can be minus with un-optimized index. Does DefaultSolrHighlight.getQueryScorer() use QueryScorer(Query,IndexReader,String) by design? If no, I'm happy to open a ticket. Thank you, Koji