mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
import django.db.models.deletion
 | 
						|
from django.db import migrations, models
 | 
						|
 | 
						|
 | 
						|
class Migration(migrations.Migration):
 | 
						|
    """
 | 
						|
    Tables cannot have data deleted from them and be altered in a single transaction,
 | 
						|
    but we need the DELETEs to be atomic together. So we set atomic=False for the migration
 | 
						|
    in general, and run the DELETEs in one transaction, and AlterField in another.
 | 
						|
    """
 | 
						|
 | 
						|
    atomic = False
 | 
						|
 | 
						|
    dependencies = [
 | 
						|
        ("zerver", "0231_add_archive_transaction_model"),
 | 
						|
    ]
 | 
						|
 | 
						|
    operations = [
 | 
						|
        migrations.RunSQL(
 | 
						|
            """
 | 
						|
        BEGIN;
 | 
						|
        DELETE FROM zerver_archivedusermessage;
 | 
						|
        DELETE FROM zerver_archivedreaction;
 | 
						|
        DELETE FROM zerver_archivedsubmessage;
 | 
						|
        DELETE FROM zerver_archivedattachment_messages;
 | 
						|
        DELETE FROM zerver_archivedattachment;
 | 
						|
        DELETE FROM zerver_archivedmessage;
 | 
						|
        DELETE FROM zerver_archivetransaction;
 | 
						|
        COMMIT;
 | 
						|
        """,
 | 
						|
            elidable=True,
 | 
						|
        ),
 | 
						|
        migrations.AlterField(
 | 
						|
            model_name="archivedmessage",
 | 
						|
            name="archive_transaction",
 | 
						|
            field=models.ForeignKey(
 | 
						|
                on_delete=django.db.models.deletion.CASCADE, to="zerver.ArchiveTransaction"
 | 
						|
            ),
 | 
						|
        ),
 | 
						|
    ]
 |