 0b621a834a
			
		
	
	
		0b621a834a
		
	
	
	
	
		
			
			Also remove the now-superfluous join in the chat controller, which was only used to filter out these cases.
		
			
				
	
	
		
			22 lines
		
	
	
	
		
			548 B
		
	
	
	
		
			Elixir
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
	
		
			548 B
		
	
	
	
		
			Elixir
		
	
	
	
	
	
| defmodule Pleroma.Repo.Migrations.ChatConstraints do
 | |
|   use Ecto.Migration
 | |
| 
 | |
|   def change do
 | |
|     remove_orphans = """
 | |
|     delete from chats where not exists(select id from users where ap_id = chats.recipient);
 | |
|     """
 | |
| 
 | |
|     execute(remove_orphans)
 | |
| 
 | |
|     drop(constraint(:chats, "chats_user_id_fkey"))
 | |
| 
 | |
|     alter table(:chats) do
 | |
|       modify(:user_id, references(:users, type: :uuid, on_delete: :delete_all))
 | |
| 
 | |
|       modify(
 | |
|         :recipient,
 | |
|         references(:users, column: :ap_id, type: :string, on_delete: :delete_all)
 | |
|       )
 | |
|     end
 | |
|   end
 | |
| end
 |