diff --git a/app/models/user.rb b/app/models/user.rb
index 8b374c1825b71fff81e7fccdc2319e521c5ed3ef..5aa5c2b15c4a6be9b64fc822092785dc6a9811cc 100644
--- a/app/models/user.rb
+++ b/app/models/user.rb
@@ -362,7 +362,8 @@ class User < ApplicationRecord
   end
 
   def regenerate_feed!
-    Redis.current.setnx("account:#{account_id}:regeneration", true) && Redis.current.expire("account:#{account_id}:regeneration", 1.day.seconds)
+    return unless Redis.current.setnx("account:#{account_id}:regeneration", true)
+    Redis.current.expire("account:#{account_id}:regeneration", 1.day.seconds)
     RegenerationWorker.perform_async(account_id)
   end
 
diff --git a/app/services/precompute_feed_service.rb b/app/services/precompute_feed_service.rb
index 4f771ff7233966eb307267e805b199eca6cd1576..076dedacab97dfed799c5c417b4ada969e0555e4 100644
--- a/app/services/precompute_feed_service.rb
+++ b/app/services/precompute_feed_service.rb
@@ -3,6 +3,7 @@
 class PrecomputeFeedService < BaseService
   def call(account)
     FeedManager.instance.populate_feed(account)
+  ensure
     Redis.current.del("account:#{account.id}:regeneration")
   end
 end