Files
zulip/zerver/migrations/0232_make_archive_transaction_field_not_nullable.py
Anders Kaseorg 6e4c3e41dc python: Normalize quotes with Black.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-02-12 13:11:19 -08:00

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"
),
),
]