home_key = FeedManager.instance.key(:home, account.id)
redis.pipelined do
- target_account.statuses.select('id').find_each do |status|
+ target_account.statuses.select('id').reorder(nil).find_each do |status|
redis.zrem(home_key, status.id)
end
end
def deliver_to_followers(status)
Rails.logger.debug "Delivering status #{status.id} to followers"
- status.account.followers.where(domain: nil).joins(:user).where('users.current_sign_in_at > ?', 14.days.ago).select(:id).find_each do |follower|
+ status.account.followers.where(domain: nil).joins(:user).where('users.current_sign_in_at > ?', 14.days.ago).select(:id).reorder(nil).find_each do |follower|
FeedInsertWorker.perform_async(status.id, follower.id)
end
end
def clear_home_timeline(account, target_account)
home_key = FeedManager.instance.key(:home, account.id)
- target_account.statuses.select('id').find_each do |status|
+ target_account.statuses.select('id').reorder(nil).find_each do |status|
redis.zrem(home_key, status.id)
end
end
private
def purge_content
- @account.statuses.find_each do |status|
+ @account.statuses.reorder(nil).find_each do |status|
RemoveStatusService.new.call(status)
end