Skip to content

Commit e93fa77

Browse files
authored
Reduce queue size for audio images (was causing pg pooling issues. Remove pagination from audio image subscription read query (#831)
1 parent 9928ecd commit e93fa77

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

server/config/config.exs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ config :orcasite, Oban,
9191
repo: Orcasite.Repo,
9292
# 7 day job retention
9393
plugins: [{Oban.Plugins.Pruner, max_age: 7 * 24 * 60 * 60}],
94-
queues: [default: 10, email: 10, feeds: 10, audio_images: 20]
94+
queues: [default: 10, email: 10, feeds: 10, audio_images: 10]
9595

9696
config :spark, :formatter,
9797
remove_parens?: true,

server/lib/orcasite/radio/audio_image.ex

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,23 @@ defmodule Orcasite.Radio.AudioImage do
102102
)
103103
end
104104

105+
read :for_feed_subscription do
106+
argument :feed_id, :string, allow_nil?: false
107+
argument :start_time, :utc_datetime_usec, allow_nil?: false
108+
argument :end_time, :utc_datetime_usec, allow_nil?: false
109+
110+
filter expr(
111+
feed_id == ^arg(:feed_id) and
112+
fragment(
113+
"(?) <= (?) AND (?) >= (?)",
114+
start_time,
115+
^arg(:end_time),
116+
end_time,
117+
^arg(:start_time)
118+
)
119+
)
120+
end
121+
105122
create :for_feed_segment do
106123
upsert? true
107124
upsert_identity :unique_audio_image
@@ -249,7 +266,7 @@ defmodule Orcasite.Radio.AudioImage do
249266
pubsub OrcasiteWeb.Endpoint
250267

251268
subscribe :audio_image_updated do
252-
read_action :for_feed
269+
read_action :for_feed_subscription
253270
actions [:for_feed_segment, :update]
254271
end
255272
end

0 commit comments

Comments
 (0)