Class RangeFieldSearch

java.lang.Object
org.apache.solr.bench.search.RangeFieldSearch

public class RangeFieldSearch extends Object
Benchmarks the docValues filter optimization for range field types.

Docs hold wide ranges [m, m+SPAN] in indexed-only (BKD) and indexed+docValues fields, single-valued (r_ir/r_ir_dv) and multiValued (r_mv_ir/ r_mv_ir_dv). A central window matches ~half the docs, so the range clause is costly to materialize but cheap to verify per-doc. It is AND-ed with a selective term filter whose doc-frequency is controlled, so we know and the [range-bench] setup log confirms, which IndexOrDocValuesQuery branch runs.

Params: criteria (the {!numericRange criteria=...} relation), field (the DV / non-DV pairs), and scenario - the lead's selectivity vs the rangeCost/8 cutover: selective_dv (~2000 docs -> docValues branch), broad_points (~250000 docs -> points branch), none_points (standalone -> points).