- Fix score_pressure crash on nil pressure_mb (coastal HRRR points) - Set 10-min timeout on grid score upsert transaction (was :infinity) - Single DELETE for prune_old_scores instead of N queries in a loop - Remove dead load_hrrr_refractivity that loaded 95k rows into nil map - Pass selected_time to point_detail to skip latest_valid_time sub-query - Batch station existence checks (1 query per path point, not per station) - Batch solar index upserts via insert_all in chunks of 500 - Batch backfill_distances via single UPDATE FROM VALUES statement - Add is_grid_point boolean + partial index to hrrr_profiles (replaces non-sargable modular arithmetic filter on every weather map query) - Add partial index on contacts(qso_timestamp) WHERE pos1 IS NOT NULL - Move backfill enqueue to Oban worker so UI returns immediately
10 lines
265 B
Elixir
10 lines
265 B
Elixir
defmodule Microwaveprop.Repo.Migrations.AddContactsPos1PartialIndex do
|
|
use Ecto.Migration
|
|
|
|
def change do
|
|
create index(:contacts, [:qso_timestamp],
|
|
where: "pos1 IS NOT NULL",
|
|
name: :contacts_pos1_not_null_idx
|
|
)
|
|
end
|
|
end
|