[reset] cleanup

This commit is contained in:
Fosco Marotto 2021-01-24 13:50:51 -05:00
parent 553ca5afa2
commit 1c647b0b06
7 changed files with 45 additions and 26 deletions

View File

@ -34,6 +34,14 @@ class Api::V1::Statuses::FavouritesController < Api::BaseController
end end
def requested_status def requested_status
Status.find(params[:status_id]) rs = nil
begin
rs = Status.find(params[:status_id])
rescue ActiveRecord::RecordNotFound
Status.connection.stick_to_master!
rs = Status.find(params[:status_id])
end
return rs unless rs.nil?
raise ActiveRecord::RecordNotFound
end end
end end

View File

@ -31,7 +31,15 @@ class Api::V1::Statuses::ReblogsController < Api::BaseController
private private
def status_for_reblog def status_for_reblog
Status.find params[:status_id] rs = nil
begin
rs = Status.find(params[:status_id])
rescue ActiveRecord::RecordNotFound
Status.connection.stick_to_master!
rs = Status.find(params[:status_id])
end
return rs unless rs.nil?
raise ActiveRecord::RecordNotFound
end end
def status_for_destroy def status_for_destroy

View File

@ -80,10 +80,6 @@ class SortingQueryBuilder < BaseService
query += " query += "
) q ) q
left join custom_filters cf
on cf.account_id = #{account_id}
and q.text like '%' || cf.phrase || '%'
where cf.id is null
" "
return Status.find_by_sql query return Status.find_by_sql query
end end

View File

@ -8,11 +8,7 @@ class HomeFeed < Feed
end end
def get(limit = 20, max_id = nil, since_id = nil, min_id = nil) def get(limit = 20, max_id = nil, since_id = nil, min_id = nil)
# if redis.exists?("account:#{@account.id}:regeneration")
from_database(limit, max_id, since_id, min_id) from_database(limit, max_id, since_id, min_id)
# else
# super
# end
end end
private private
@ -33,7 +29,12 @@ class HomeFeed < Feed
and s.reply is false and s.reply is false
and ( and (
s.account_id = #{@id} s.account_id = #{@id}
or s.account_id in (select target_account_id from follows where account_id = #{@id}) or s.account_id in (
select ff.target_account_id
from follows ff
join accounts af
on ff.target_account_id = af.id
where ff.account_id = #{@id})
) )
and s.account_id not in (select target_account_id from mutes where account_id = #{@id}) and s.account_id not in (select target_account_id from mutes where account_id = #{@id})
and (reblog.id is null or reblog.account_id not in (select target_account_id from mutes where account_id = #{@id})) and (reblog.id is null or reblog.account_id not in (select target_account_id from mutes where account_id = #{@id}))
@ -43,16 +44,6 @@ class HomeFeed < Feed
order by s.created_at desc order by s.created_at desc
limit #{limit} limit #{limit}
) st ) st
left join statuses rb
on st.reblog_of_id = rb.id
left join custom_filters cf
on cf.account_id = #{@id} and (
st.text like '%' || cf.phrase || '%'
or rb.text like '%' || cf.phrase || '%')
where cf.id is null or st.account_id = #{@id}
" "
# .reject { |status| FeedManager.instance.filter?(:home, status, @account.id) }
# Status.as_home_timeline(@account)
# .paginate_by_id(limit, max_id: max_id, since_id: since_id, min_id: min_id)
end end
end end

View File

@ -10,7 +10,13 @@ class FavouriteService < BaseService
def call(account, status) def call(account, status)
authorize_with account, status, :favourite? authorize_with account, status, :favourite?
favourite = nil
begin
favourite = Favourite.find_by(account: account, status: status) favourite = Favourite.find_by(account: account, status: status)
rescue ActiveRecord::RecordNotFound
Favourite.connection.stick_to_master!
favourite = Favourite.find_by(account: account, status: status)
end
return favourite unless favourite.nil? return favourite unless favourite.nil?

View File

@ -13,7 +13,13 @@ class ReblogService < BaseService
authorize_with account, reblogged_status, :reblog? authorize_with account, reblogged_status, :reblog?
reblog = nil
begin
reblog = account.statuses.find_by(reblog: reblogged_status) reblog = account.statuses.find_by(reblog: reblogged_status)
rescue ActiveRecord::RecordNotFound
account.statuses.connection.stick_to_master!
reblog = account.statuses.find_by(reblog: reblogged_status)
end
return reblog unless reblog.nil? return reblog unless reblog.nil?

View File

@ -16,6 +16,10 @@ Rails.application.routes.draw do
mount PgHero::Engine, at: 'pghero', as: :pghero mount PgHero::Engine, at: 'pghero', as: :pghero
end end
Doorkeeper::AccessToken.connection.stick_to_master!
Doorkeeper::AccessGrant.connection.stick_to_master!
SessionActivation.connection.stick_to_master!
use_doorkeeper do use_doorkeeper do
controllers authorizations: 'oauth/authorizations', controllers authorizations: 'oauth/authorizations',
authorized_applications: 'oauth/authorized_applications', authorized_applications: 'oauth/authorized_applications',