From 8770b2cb9cbbb61c1eae54c9ce1f564f9d350044 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Buclin?= Date: Thu, 31 Jul 2014 18:38:18 +0200 Subject: Bug 1044561: Bad definition of indexes for the new user_api_keys DB table r=sgreen a=glob --- Bugzilla/DB/Schema.pm | 4 ++-- Bugzilla/Install/DB.pm | 17 +++++++++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) (limited to 'Bugzilla') diff --git a/Bugzilla/DB/Schema.pm b/Bugzilla/DB/Schema.pm index b175f1554..2fa811042 100644 --- a/Bugzilla/DB/Schema.pm +++ b/Bugzilla/DB/Schema.pm @@ -1749,8 +1749,8 @@ use constant ABSTRACT_SCHEMA => { last_used => {TYPE => 'DATETIME'}, ], INDEXES => [ - user_api_keys_key => {FIELDS => ['api_key'], TYPE => 'UNIQUE'}, - user_api_keys_user_id => {FIELDS => ['user_id']}, + user_api_keys_api_key_idx => {FIELDS => ['api_key'], TYPE => 'UNIQUE'}, + user_api_keys_user_id_idx => ['user_id'], ], }, }; diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm index bbddf1620..74b2b1e39 100644 --- a/Bugzilla/Install/DB.pm +++ b/Bugzilla/Install/DB.pm @@ -723,6 +723,9 @@ sub update_table_definitions { $dbh->bz_alter_column('tokens', 'tokentype', {TYPE => 'varchar(16)', NOTNULL => 1}); + # 2014-07-27 LpSolit@gmail.com - Bug 1044561 + _fix_user_api_keys_indexes(); + ################################################################ # New --TABLE-- changes should go *** A B O V E *** this point # ################################################################ @@ -3881,6 +3884,20 @@ sub _fix_components_primary_key { } } +sub _fix_user_api_keys_indexes { + my $dbh = Bugzilla->dbh; + + if ($dbh->bz_index_info('user_api_keys', 'user_api_keys_key')) { + $dbh->bz_drop_index('user_api_keys', 'user_api_keys_key'); + $dbh->bz_add_index('user_api_keys', 'user_api_keys_api_key_idx', + { FIELDS => ['api_key'], TYPE => 'UNIQUE' }); + } + if ($dbh->bz_index_info('user_api_keys', 'user_api_keys_user_id')) { + $dbh->bz_drop_index('user_api_keys', 'user_api_keys_user_id'); + $dbh->bz_add_index('user_api_keys', 'user_api_keys_user_id_idx', ['user_id']); + } +} + 1; __END__ -- cgit v1.2.1