PromQL defines stddev, stdvar, stddev_over_time, and stdvar_over_time as population statistics (divide by N).
The current lowering in crates/lower/src/promql.rs maps all four to population: false (sample stddev, divide by N-1):
InnerFunc::StdDev => AggFunc::StdDev { population: false },
InnerFunc::Variance => AggFunc::Variance { population: false },
// and outer_func maps the same way
These should be population: true. The e2e tests in tier2_agg.rs and tier3_range.rs currently assert population: false to match the lowering — they should be updated to population: true once this is fixed.
PromQL defines
stddev,stdvar,stddev_over_time, andstdvar_over_timeas population statistics (divide by N).The current lowering in
crates/lower/src/promql.rsmaps all four topopulation: false(sample stddev, divide by N-1):These should be
population: true. The e2e tests intier2_agg.rsandtier3_range.rscurrently assertpopulation: falseto match the lowering — they should be updated topopulation: trueonce this is fixed.