Check table existence on prepare_for_foreign_keys (#4225)
* Check table existence on prepare_for_foreign_keys * Remove trailing whitespace
This commit is contained in:
		
							parent
							
								
									033f970af3
								
							
						
					
					
						commit
						1cceefce33
					
				
					 1 changed files with 10 additions and 3 deletions
				
			
		|  | @ -232,9 +232,16 @@ namespace :mastodon do | |||
|     task prepare_for_foreign_keys: :environment do | ||||
|       # All the deletes: | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM statuses USING statuses s LEFT JOIN accounts a ON a.id = s.account_id WHERE statuses.id = s.id AND a.id IS NULL') | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM account_domain_blocks USING account_domain_blocks adb LEFT JOIN accounts a ON a.id = adb.account_id WHERE account_domain_blocks.id = adb.id AND a.id IS NULL') | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM conversation_mutes USING conversation_mutes cm LEFT JOIN accounts a ON a.id = cm.account_id WHERE conversation_mutes.id = cm.id AND a.id IS NULL') | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM conversation_mutes USING conversation_mutes cm LEFT JOIN conversations c ON c.id = cm.conversation_id WHERE conversation_mutes.id = cm.id AND c.id IS NULL') | ||||
| 
 | ||||
|       if ActiveRecord::Base.connection.table_exists? :account_domain_blocks | ||||
|         ActiveRecord::Base.connection.execute('DELETE FROM account_domain_blocks USING account_domain_blocks adb LEFT JOIN accounts a ON a.id = adb.account_id WHERE account_domain_blocks.id = adb.id AND a.id IS NULL') | ||||
|       end | ||||
| 
 | ||||
|       if ActiveRecord::Base.connection.table_exists? :conversation_mutes | ||||
|         ActiveRecord::Base.connection.execute('DELETE FROM conversation_mutes USING conversation_mutes cm LEFT JOIN accounts a ON a.id = cm.account_id WHERE conversation_mutes.id = cm.id AND a.id IS NULL') | ||||
|         ActiveRecord::Base.connection.execute('DELETE FROM conversation_mutes USING conversation_mutes cm LEFT JOIN conversations c ON c.id = cm.conversation_id WHERE conversation_mutes.id = cm.id AND c.id IS NULL') | ||||
|       end | ||||
| 
 | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM favourites USING favourites f LEFT JOIN accounts a ON a.id = f.account_id WHERE favourites.id = f.id AND a.id IS NULL') | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM favourites USING favourites f LEFT JOIN statuses s ON s.id = f.status_id WHERE favourites.id = f.id AND s.id IS NULL') | ||||
|       ActiveRecord::Base.connection.execute('DELETE FROM blocks USING blocks b LEFT JOIN accounts a ON a.id = b.account_id WHERE blocks.id = b.id AND a.id IS NULL') | ||||
|  |  | |||
		Reference in a new issue