summaryrefslogtreecommitdiffstats
path: root/extensions/TrackingFlags/Extension.pm
diff options
context:
space:
mode:
Diffstat (limited to 'extensions/TrackingFlags/Extension.pm')
-rw-r--r--extensions/TrackingFlags/Extension.pm12
1 files changed, 11 insertions, 1 deletions
diff --git a/extensions/TrackingFlags/Extension.pm b/extensions/TrackingFlags/Extension.pm
index 5a4b24611..fb7278420 100644
--- a/extensions/TrackingFlags/Extension.pm
+++ b/extensions/TrackingFlags/Extension.pm
@@ -101,7 +101,8 @@ sub db_schema_abstract_schema {
NOTNULL => 1,
REFERENCES => {
TABLE => 'fielddefs',
- COLUMN => 'id'
+ COLUMN => 'id',
+ DELETE => 'CASCADE'
}
},
name => {
@@ -262,6 +263,15 @@ sub db_schema_abstract_schema {
};
}
+sub install_update_db {
+ my $dbh = Bugzilla->dbh;
+ my $fk = $dbh->bz_fk_info('tracking_flags', 'field_id');
+ if ($fk and !defined $fk->{DELETE}) {
+ $fk->{DELETE} = 'CASCADE';
+ $dbh->bz_alter_fk('tracking_flags', 'field_id', $fk);
+ }
+}
+
sub active_custom_fields {
my ($self, $args) = @_;
my $fields = $args->{'fields'};