diff options
author | lpsolit%gmail.com <> | 2005-05-04 03:23:37 +0200 |
---|---|---|
committer | lpsolit%gmail.com <> | 2005-05-04 03:23:37 +0200 |
commit | 1da5153872ffbe188daa476791f1a18384167b34 (patch) | |
tree | 9a489706f4b78f40ce6574512350fdb2353ef4ea | |
parent | 0041d80aab9c3285d5245e39f3a75d1cdaa4edc4 (diff) | |
download | bugzilla-1da5153872ffbe188daa476791f1a18384167b34.tar.gz bugzilla-1da5153872ffbe188daa476791f1a18384167b34.tar.xz |
Bug 7233: Editversions.cgi has a potential race resulting in duplicate versions - Patch by Frédéric Buclin <LpSolit@gmail.com> r=mkanat a=justdave
-rw-r--r-- | Bugzilla/DB/Schema.pm | 6 | ||||
-rwxr-xr-x | checksetup.pl | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/Bugzilla/DB/Schema.pm b/Bugzilla/DB/Schema.pm index 1b905ac01..8682f1721 100644 --- a/Bugzilla/DB/Schema.pm +++ b/Bugzilla/DB/Schema.pm @@ -455,9 +455,13 @@ use constant ABSTRACT_SCHEMA => { versions => { FIELDS => [ - value => {TYPE => 'TINYTEXT'}, + value => {TYPE => 'varchar(64)', NOTNULL => 1}, product_id => {TYPE => 'INT2', NOTNULL => 1}, ], + INDEXES => [ + versions_product_id_idx => {FIELDS => [qw(product_id value)], + TYPE => 'UNIQUE'}, + ], }, milestones => { diff --git a/checksetup.pl b/checksetup.pl index 565fa1e70..ef3d80735 100755 --- a/checksetup.pl +++ b/checksetup.pl @@ -3937,6 +3937,13 @@ $dbh->bz_add_index('flags', 'flags_type_id_idx', [qw(type_id)]); # For a short time, the flags_type_id_idx was misnamed in upgraded installs. $dbh->bz_drop_index('flags', 'type_id'); +# 2005-04-28 - LpSolit@gmail.com - Bug 7233: add an index to versions +$dbh->bz_alter_column('versions', 'value', + {TYPE => 'varchar(64)', NOTNULL => 1}); +$dbh->bz_add_index('versions', 'versions_product_id_idx', + {TYPE => 'UNIQUE', FIELDS => [qw(product_id value)]}); + + # If you had to change the --TABLE-- definition in any way, then add your # differential change code *** A B O V E *** this comment. |