Convert the packets table to a time-partitioned table with daily partitions (PARTITION BY RANGE on received_at). This replaces the expensive CTE-based batch DELETE cleanup with instant DROP TABLE partition drops — no dead tuples, no WAL pressure, no VACUUM needed. - Add PartitionManager GenServer to create/drop daily partitions - Simplify PacketCleanupWorker to delegate to PartitionManager - Replace gridsquare/geocalc deps with local Maidenhead module - Remove gettext_pseudolocalize dependency - Fix Decimal comparison in packet consumer test |
||
|---|---|---|
| .. | ||
| channels | ||
| components | ||
| controllers | ||
| live | ||
| plugs | ||
| aprs_symbol.ex | ||
| endpoint.ex | ||
| gettext.ex | ||
| router.ex | ||
| telemetry.ex | ||
| time_helpers.ex | ||
| time_utils.ex | ||
| user_auth.ex | ||
| weather_units.ex | ||