Fix sleep in pull_top_videos

This commit is contained in:
Omar Roth 2019-06-15 19:18:36 -05:00
parent 38600b3347
commit 3be1c9261f
No known key found for this signature in database
GPG key ID: B8254FB7EC3D37F2
3 changed files with 19 additions and 6 deletions

View file

@ -158,6 +158,7 @@ if config.statistics_enabled
} }
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end
end end
@ -167,7 +168,6 @@ if config.top_enabled
spawn do spawn do
pull_top_videos(config, PG_DB) do |videos| pull_top_videos(config, PG_DB) do |videos|
top_videos = videos top_videos = videos
sleep 1.minute
end end
end end
end end
@ -176,7 +176,6 @@ popular_videos = [] of ChannelVideo
spawn do spawn do
pull_popular_videos(PG_DB) do |videos| pull_popular_videos(PG_DB) do |videos|
popular_videos = videos popular_videos = videos
sleep 1.minute
end end
end end

View file

@ -703,6 +703,7 @@ def create_notification_stream(env, proxies, config, kemal_config, decrypt_funct
id += 1 id += 1
sleep 1.minute sleep 1.minute
Fiber.yield
end end
rescue ex rescue ex
end end

View file

@ -36,6 +36,7 @@ def refresh_channels(db, logger, config)
end end
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end
@ -112,6 +113,7 @@ def refresh_feeds(db, logger, config)
end end
sleep 5.seconds sleep 5.seconds
Fiber.yield
end end
end end
@ -162,6 +164,7 @@ def subscribe_to_feeds(db, logger, key, config)
end end
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end
@ -174,12 +177,16 @@ def pull_top_videos(config, db)
begin begin
top = rank_videos(db, 40) top = rank_videos(db, 40)
rescue ex rescue ex
sleep 1.minute
Fiber.yield
next next
end end
if top.size > 0 if top.size == 0
args = arg_array(top) sleep 1.minute
else Fiber.yield
next next
end end
@ -194,7 +201,9 @@ def pull_top_videos(config, db)
end end
yield videos yield videos
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end
@ -206,7 +215,9 @@ def pull_popular_videos(db)
ORDER BY ucid, published DESC", as: ChannelVideo).sort_by { |video| video.published }.reverse ORDER BY ucid, published DESC", as: ChannelVideo).sort_by { |video| video.published }.reverse
yield videos yield videos
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end
@ -214,12 +225,13 @@ def update_decrypt_function
loop do loop do
begin begin
decrypt_function = fetch_decrypt_function decrypt_function = fetch_decrypt_function
yield decrypt_function
rescue ex rescue ex
next next
end end
yield decrypt_function
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end
@ -234,5 +246,6 @@ def find_working_proxies(regions)
end end
sleep 1.minute sleep 1.minute
Fiber.yield
end end
end end