Add new public status index (#26344)
Co-authored-by: Eugen Rochko <eugen@zeonfederated.com> Co-authored-by: Claire <claire.github-309c@sitedethib.com>
This commit is contained in:
		
							parent
							
								
									96bcee66fb
								
							
						
					
					
						commit
						30c191aaa0
					
				
					 28 changed files with 584 additions and 87 deletions
				
			
		
							
								
								
									
										15
									
								
								app/workers/add_to_public_statuses_index_worker.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/workers/add_to_public_statuses_index_worker.rb
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,15 @@
 | 
			
		|||
# frozen_string_literal: true
 | 
			
		||||
 | 
			
		||||
class AddToPublicStatusesIndexWorker
 | 
			
		||||
  include Sidekiq::Worker
 | 
			
		||||
 | 
			
		||||
  def perform(account_id)
 | 
			
		||||
    account = Account.find(account_id)
 | 
			
		||||
 | 
			
		||||
    return unless account.indexable?
 | 
			
		||||
 | 
			
		||||
    account.add_to_public_statuses_index!
 | 
			
		||||
  rescue ActiveRecord::RecordNotFound
 | 
			
		||||
    true
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
							
								
								
									
										15
									
								
								app/workers/remove_from_public_statuses_index_worker.rb
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								app/workers/remove_from_public_statuses_index_worker.rb
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,15 @@
 | 
			
		|||
# frozen_string_literal: true
 | 
			
		||||
 | 
			
		||||
class RemoveFromPublicStatusesIndexWorker
 | 
			
		||||
  include Sidekiq::Worker
 | 
			
		||||
 | 
			
		||||
  def perform(account_id)
 | 
			
		||||
    account = Account.find(account_id)
 | 
			
		||||
 | 
			
		||||
    return if account.indexable?
 | 
			
		||||
 | 
			
		||||
    account.remove_from_public_statuses_index!
 | 
			
		||||
  rescue ActiveRecord::RecordNotFound
 | 
			
		||||
    true
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			@ -23,6 +23,6 @@ class Scheduler::IndexingScheduler
 | 
			
		|||
  end
 | 
			
		||||
 | 
			
		||||
  def indexes
 | 
			
		||||
    [AccountsIndex, TagsIndex, StatusesIndex]
 | 
			
		||||
    [AccountsIndex, TagsIndex, PublicStatusesIndex, StatusesIndex]
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Reference in a new issue