prop/rust/prop_grid_rs/src
Graham McIntire 3ec976ccc4
fix(prop-grid-rs): evict expired IdxCache entries on get
The in-memory idx cache kept entries around forever: get() returned
None on expiry but left the HashMap entry in place. Each hourly
HRRR cycle adds ~38 new idx URLs (19 forecast hours × surface +
pressure), so the map grew ~4 MiB/day indefinitely on each Rust
replica. Not the main cause of the OOM loop (glibc fragmentation
was; jemalloc landed last commit) but worth sealing so a long-
lived pod's idx cache can't drift toward the 3 GiB ceiling over
weeks.

Evicts on-touch via `get()` — simple, amortized, no background
sweep thread needed.
2026-04-22 08:57:35 -05:00
..
bin hardening: Rust worker circuit-breaker + delete wall-clock sleep from beacon test 2026-04-21 18:02:46 -05:00
band_config.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
commercial.rs fix(commercial): decode commercial_links.id as Uuid, not i64 2026-04-20 09:21:10 -05:00
db.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
decoder.rs perf(rust): intern CellValues keys as Arc<str> to kill per-cell String clones 2026-04-21 17:54:44 -05:00
duct.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
fetcher.rs fix(prop-grid-rs): evict expired IdxCache entries on get 2026-04-22 08:57:35 -05:00
grid.rs feat(grid-rs): Rust worker for HRRR f01..f18 propagation chain 2026-04-19 15:42:49 -05:00
hrrr_points.rs perf+hygiene: batch 1 of system-review fixes 2026-04-21 17:06:07 -05:00
lib.rs fix(prop-grid-rs): switch global allocator to jemalloc 2026-04-22 08:52:24 -05:00
metrics.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
native_duct.rs perf(rust): intern CellValues keys as Arc<str> to kill per-cell String clones 2026-04-21 17:54:44 -05:00
nexrad.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
pipeline.rs docs/tests: moduledocs on 18 LiveViews, MapLive event coverage, Rust pipeline roundtrip 2026-04-21 17:16:12 -05:00
profiles_file.rs perf(wire)+ts: pack scores as flat tuples, bump ProfilesFile gzip, tighten TS types 2026-04-21 17:45:06 -05:00
region.rs feat(grid-rs): Rust worker for HRRR f01..f18 propagation chain 2026-04-19 15:42:49 -05:00
scorer.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
scores_file.rs refactor(scores): rename file extension .ntms -> .prop with legacy reads 2026-04-21 15:54:12 -05:00
sounding_params.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00
telemetry.rs style(rust): apply cargo fmt across prop_grid_rs 2026-04-20 13:20:22 -05:00