Reproduced in production pod 2026-04-30: wgrib2 3.6.0 crashes with `free(): invalid size` when -lon point extraction is run against any HRDPS rotated lat/lon GRIB2 file, regardless of batch size (failed at N=200, N=1000, N=2000). Output before the abort is denormal f32 garbage (val=4.93944e-41) — wgrib2's internal record buffer is being corrupted. Same files extract cleanly with wgrib2 3.8.0 locally. Bumping the build arg in both Dockerfile (Elixir image, used by hrrr-point-rs/per-QSO HRDPS lookups) and rust/prop_grid_rs/Dockerfile (Rust grid worker) so both consumers get the fix. Also bumped POINT_BATCH 200 → 1000 in decoder.rs. With wgrib2 3.8.0 stable at 1000+ point batches, this drops the chain-step invocation count from 286 → 57 per step. Comment captures the reproduction context so a future bisection finds it quickly. |
||
|---|---|---|
| .. | ||
| src | ||
| tests | ||
| .gitignore | ||
| Cargo.lock | ||
| Cargo.toml | ||
| Dockerfile | ||