treeherder/perf/migrations/0050_cascade_perf_datum_deletion_replicate.py (26 lines of code) (raw):

# Generated by Django 3.0.8 on 2020-12-11 14:42 from django.db import migrations DATUM_REPLICATE_CONSTRAINT_SYMBOL = ( 'performance_datum_re_performance_datum_id_fe2ed518_fk_performan' ) class Migration(migrations.Migration): dependencies = [ ('perf', '0049_performancedatumreplicate'), ] operations = [ migrations.RunSQL( # add ON DELETE CASCADE at database level [ f'ALTER TABLE performance_datum_replicate ' f'DROP CONSTRAINT {DATUM_REPLICATE_CONSTRAINT_SYMBOL};', f'ALTER TABLE performance_datum_replicate ' f'ADD CONSTRAINT {DATUM_REPLICATE_CONSTRAINT_SYMBOL} ' f'FOREIGN KEY (performance_datum_id) REFERENCES performance_datum (ID) ON DELETE CASCADE;', ], # put back the non-CASCADE foreign key constraint reverse_sql=[ f'ALTER TABLE performance_datum_replicate ' f'DROP CONSTRAINT {DATUM_REPLICATE_CONSTRAINT_SYMBOL};', f'ALTER TABLE performance_datum_replicate ' f'ADD CONSTRAINT {DATUM_REPLICATE_CONSTRAINT_SYMBOL} ' f'FOREIGN KEY (performance_datum_id) REFERENCES performance_datum (ID);', ], ) ]