summaryrefslogtreecommitdiffstats
path: root/Bugzilla/Install
diff options
context:
space:
mode:
authorDave Lawrence <dlawrence@mozilla.com>2012-07-25 21:56:05 +0200
committerDave Lawrence <dlawrence@mozilla.com>2012-07-25 21:56:05 +0200
commit4c10c375023526202df17a70927070e795305266 (patch)
tree6f9c130147fac1c3c510e26e784ec660cda3b0c8 /Bugzilla/Install
parent2f75b68d00ec8bf732b4f0874fec302bd3262988 (diff)
downloadbugzilla-4c10c375023526202df17a70927070e795305266.tar.gz
bugzilla-4c10c375023526202df17a70927070e795305266.tar.xz
Bug 776972 - Increase bugs_activity primary key size to INTSERIAL for future growth
r/a=LpSolit
Diffstat (limited to 'Bugzilla/Install')
-rw-r--r--Bugzilla/Install/DB.pm26
1 files changed, 23 insertions, 3 deletions
diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm
index b2cf1194f..6a8dbc64a 100644
--- a/Bugzilla/Install/DB.pm
+++ b/Bugzilla/Install/DB.pm
@@ -454,8 +454,8 @@ sub update_table_definitions {
_clean_control_characters_from_short_desc();
# 2005-12-07 altlst@sonic.net -- Bug 225221
- $dbh->bz_add_column('longdescs', 'comment_id',
- {TYPE => 'MEDIUMSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
+ # 2012-07-24 dkl@mozilla.com - Bug 776982
+ _fix_longdescs_primary_key();
_stop_storing_inactive_flags();
_change_short_desc_from_mediumtext_to_varchar();
@@ -676,12 +676,17 @@ sub update_table_definitions {
# 2012-06-13 dkl@mozilla.com - Bug 764457
$dbh->bz_add_column('bugs_activity', 'id',
- {TYPE => 'MEDIUMSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
+ {TYPE => 'INTSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
# 2012-06-13 dkl@mozilla.com - Bug 764466
$dbh->bz_add_column('profiles_activity', 'id',
{TYPE => 'MEDIUMSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
+ # 2012-07-24 dkl@mozilla.com - Bug 776972
+ $dbh->bz_alter_column('bugs_activity', 'id',
+ {TYPE => 'INTSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
+
+
################################################################
# New --TABLE-- changes should go *** A B O V E *** this point #
################################################################
@@ -3708,6 +3713,21 @@ sub _fix_notnull_defaults {
}
}
+sub _fix_longdescs_primary_key {
+ my $dbh = Bugzilla->dbh;
+ my $column_def = {TYPE => 'INTSERIAL', NOTNULL => 1, PRIMARYKEY => 1};
+ if (!$dbh->bz_column_info('longdescs', 'comment_id')) {
+ $dbh->bz_add_column('longdescs', 'comment_id', $column_def);
+ }
+ elsif ($dbh->bz_column_info('longdescs', 'comment_id')->{TYPE} ne 'INTSERIAL') {
+ $dbh->bz_drop_fk('bugs_activity', 'comment_id');
+ $dbh->bz_alter_column('bugs_activity', 'comment_id', {TYPE => 'INT4'});
+ $dbh->bz_alter_column('longdescs', 'comment_id', $column_def);
+ $dbh->bz_add_fk('bugs_activity', 'comment_id',
+ {TABLE => 'longdescs', COLUMN => 'comment_id', DELETE => 'CASCADE'});
+ }
+}
+
1;
__END__