diff --git a/lib/microwaveprop/workers/iemre_fetch_worker.ex b/lib/microwaveprop/workers/iemre_fetch_worker.ex index f7251bf1..9412797c 100644 --- a/lib/microwaveprop/workers/iemre_fetch_worker.ex +++ b/lib/microwaveprop/workers/iemre_fetch_worker.ex @@ -1,6 +1,9 @@ defmodule Microwaveprop.Workers.IemreFetchWorker do @moduledoc false - use Oban.Worker, queue: :iemre, max_attempts: 20 + use Oban.Worker, + queue: :iemre, + max_attempts: 20, + unique: [period: 300, fields: [:args], states: [:scheduled, :available]] alias Microwaveprop.Weather alias Microwaveprop.Weather.IemClient diff --git a/lib/microwaveprop/workers/rtma_fetch_worker.ex b/lib/microwaveprop/workers/rtma_fetch_worker.ex index 7a3201fc..4191b80d 100644 --- a/lib/microwaveprop/workers/rtma_fetch_worker.ex +++ b/lib/microwaveprop/workers/rtma_fetch_worker.ex @@ -3,7 +3,10 @@ defmodule Microwaveprop.Workers.RtmaFetchWorker do Fetches RTMA surface observations for real-time propagation scoring. 15-minute resolution provides finer temporal detail than HRRR's hourly cycle. """ - use Oban.Worker, queue: :rtma, max_attempts: 10 + use Oban.Worker, + queue: :rtma, + max_attempts: 10, + unique: [period: 300, fields: [:args], states: [:scheduled, :available]] alias Microwaveprop.Repo alias Microwaveprop.Weather.RtmaClient