summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Lawrence <dkl@mozilla.com>2014-04-10 16:29:53 +0200
committerDavid Lawrence <dkl@mozilla.com>2014-04-10 16:29:53 +0200
commit94fd1545568688d8e2627c14dab6192942b6ed37 (patch)
treef4a679f16dd15b16cb03cb70edf7af0256a84b7e
parenta2689d0747d489c5d6f1b073a829df7d69357bda (diff)
parentffad8c2a00a341fdea08187a836c4d4365b2556f (diff)
downloadbugzilla-94fd1545568688d8e2627c14dab6192942b6ed37.tar.gz
bugzilla-94fd1545568688d8e2627c14dab6192942b6ed37.tar.xz
Merge branch '4.2' of ssh://git.mozilla.org/webtools/bmo/bugzilla into 4.2
-rw-r--r--Bugzilla/DB/Schema.pm10
-rw-r--r--Bugzilla/DB/Schema/Mysql.pm2
-rw-r--r--Bugzilla/Install/DB.pm23
-rwxr-xr-xchecksetup.pl2
-rw-r--r--extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl1
-rw-r--r--extensions/Review/Extension.pm4
-rw-r--r--extensions/TrackingFlags/lib/Admin.pm13
-rw-r--r--extensions/TrackingFlags/lib/Flag/Bug.pm16
-rw-r--r--extensions/TryAutoLand/Extension.pm2
-rw-r--r--skins/standard/global.css1
10 files changed, 38 insertions, 36 deletions
diff --git a/Bugzilla/DB/Schema.pm b/Bugzilla/DB/Schema.pm
index e2a7e138e..d8f3e175a 100644
--- a/Bugzilla/DB/Schema.pm
+++ b/Bugzilla/DB/Schema.pm
@@ -342,13 +342,13 @@ use constant ABSTRACT_SCHEMA => {
bugs_activity => {
FIELDS => [
- id => {TYPE => 'BIGSERIAL', NOTNULL => 1,
+ id => {TYPE => 'INTSERIAL', NOTNULL => 1,
PRIMARYKEY => 1},
bug_id => {TYPE => 'INT3', NOTNULL => 1,
REFERENCES => {TABLE => 'bugs',
COLUMN => 'bug_id',
DELETE => 'CASCADE'}},
- attach_id => {TYPE => 'INT5',
+ attach_id => {TYPE => 'INT3',
REFERENCES => {TABLE => 'attachments',
COLUMN => 'attach_id',
DELETE => 'CASCADE'}},
@@ -492,7 +492,7 @@ use constant ABSTRACT_SCHEMA => {
attachments => {
FIELDS => [
- attach_id => {TYPE => 'BIGSERIAL', NOTNULL => 1,
+ attach_id => {TYPE => 'MEDIUMSERIAL', NOTNULL => 1,
PRIMARYKEY => 1},
bug_id => {TYPE => 'INT3', NOTNULL => 1,
REFERENCES => {TABLE => 'bugs',
@@ -523,7 +523,7 @@ use constant ABSTRACT_SCHEMA => {
},
attach_data => {
FIELDS => [
- id => {TYPE => 'INT5', NOTNULL => 1,
+ id => {TYPE => 'INT3', NOTNULL => 1,
PRIMARYKEY => 1,
REFERENCES => {TABLE => 'attachments',
COLUMN => 'attach_id',
@@ -636,7 +636,7 @@ use constant ABSTRACT_SCHEMA => {
REFERENCES => {TABLE => 'bugs',
COLUMN => 'bug_id',
DELETE => 'CASCADE'}},
- attach_id => {TYPE => 'INT5',
+ attach_id => {TYPE => 'INT3',
REFERENCES => {TABLE => 'attachments',
COLUMN => 'attach_id',
DELETE => 'CASCADE'}},
diff --git a/Bugzilla/DB/Schema/Mysql.pm b/Bugzilla/DB/Schema/Mysql.pm
index f2450abf1..5fc50a986 100644
--- a/Bugzilla/DB/Schema/Mysql.pm
+++ b/Bugzilla/DB/Schema/Mysql.pm
@@ -108,12 +108,10 @@ sub _initialize {
INT2 => 'smallint',
INT3 => 'mediumint',
INT4 => 'integer',
- INT5 => 'bigint unsigned',
SMALLSERIAL => 'smallint auto_increment',
MEDIUMSERIAL => 'mediumint auto_increment',
INTSERIAL => 'integer auto_increment',
- BIGSERIAL => 'bigint unsigned auto_increment',
TINYTEXT => 'tinytext',
MEDIUMTEXT => 'mediumtext',
diff --git a/Bugzilla/Install/DB.pm b/Bugzilla/Install/DB.pm
index a217e0753..7ab533198 100644
--- a/Bugzilla/Install/DB.pm
+++ b/Bugzilla/Install/DB.pm
@@ -706,14 +706,6 @@ sub update_table_definitions {
# 2013-08-16 glob@mozilla.com - Bug 905925
$dbh->bz_add_index('attachments', 'attachments_ispatch_idx', ['ispatch']);
- # 2014-03-11 glob@mozilla.com - Bug 981756 (BMO only)
- _fix_attachments_primary_key();
- if ($dbh->bz_column_info('bugs_activity', 'id')->{TYPE} ne 'BIGSERIAL') {
- $dbh->bz_drop_related_fks('bugs_activity', 'id');
- $dbh->bz_alter_column('bugs_activity', 'id',
- {TYPE => 'BIGSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
- }
-
################################################################
# New --TABLE-- changes should go *** A B O V E *** this point #
################################################################
@@ -3745,21 +3737,6 @@ sub _fix_longdescs_primary_key {
}
}
-sub _fix_attachments_primary_key {
- my $dbh = Bugzilla->dbh;
- if ($dbh->bz_column_info('attachments', 'attach_id')->{TYPE} ne 'BIGSERIAL') {
- $dbh->bz_drop_related_fks('attachments', 'attach_id');
- $dbh->bz_alter_column('attach_data', 'id', {TYPE => 'INT5'});
- $dbh->bz_alter_column('bugs_activity', 'attach_id', {TYPE => 'INT5'});
- $dbh->bz_alter_column('flags', 'attach_id', {TYPE => 'INT5'});
- # the following two are bmo extensions
- $dbh->bz_alter_column('flag_state_activity', 'attachment_id', {TYPE => 'INT5'});
- $dbh->bz_alter_column('autoland_attachments', 'attach_id', {TYPE => 'INT5'});
- $dbh->bz_alter_column('attachments', 'attach_id',
- {TYPE => 'BIGSERIAL', NOTNULL => 1, PRIMARYKEY => 1});
- }
-}
-
sub _fix_dependencies_dupes {
my $dbh = Bugzilla->dbh;
my $blocked_idx = $dbh->bz_index_info('dependencies', 'dependencies_blocked_idx');
diff --git a/checksetup.pl b/checksetup.pl
index 4f37ea350..501138c6d 100755
--- a/checksetup.pl
+++ b/checksetup.pl
@@ -144,6 +144,8 @@ Bugzilla::DB::bz_create_database() if $lc_hash->{'db_check'};
# now get a handle to the database:
my $dbh = Bugzilla->dbh;
+# Clear all keys from Memcached to ensure we see the correct schema.
+Bugzilla->memcached->clear_all();
# Create the tables, and do any database-specific schema changes.
$dbh->bz_setup_database();
# Populate the tables that hold the values for the <select> fields.
diff --git a/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl b/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl
index 87dea003c..de1191520 100644
--- a/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl
+++ b/extensions/Needinfo/template/en/default/bug/needinfo.html.tmpl
@@ -137,7 +137,6 @@
<option value="qa_contact">qa contact</option>
[% END %]
<option value="user">myself</option>
- <option value="">anyone</option>
</select>
<span id="needinfo_from_container">
[% INCLUDE global/userselect.html.tmpl
diff --git a/extensions/Review/Extension.pm b/extensions/Review/Extension.pm
index 16429ccdd..3f3383697 100644
--- a/extensions/Review/Extension.pm
+++ b/extensions/Review/Extension.pm
@@ -380,7 +380,7 @@ sub _check_review_flag {
# extract the set flag-types
my @flagtype_ids = map { /^flag_type-(\d+)$/ ? $1 : () } $cgi->param();
- @flagtype_ids = grep { $cgi->param("flag_type-$_") ne 'X' } @flagtype_ids;
+ @flagtype_ids = grep { $cgi->param("flag_type-$_") eq '?' } @flagtype_ids;
return unless scalar(@flagtype_ids);
# find valid review flagtypes
@@ -656,7 +656,7 @@ sub db_schema_abstract_schema {
},
attachment_id => {
- TYPE => 'INT5',
+ TYPE => 'INT3',
REFERENCES => {
TABLE => 'attachments',
COLUMN => 'attach_id',
diff --git a/extensions/TrackingFlags/lib/Admin.pm b/extensions/TrackingFlags/lib/Admin.pm
index ef7672eaa..b72416819 100644
--- a/extensions/TrackingFlags/lib/Admin.pm
+++ b/extensions/TrackingFlags/lib/Admin.pm
@@ -19,6 +19,7 @@ use Bugzilla::Util qw(trim detaint_natural);
use Bugzilla::Extension::TrackingFlags::Constants;
use Bugzilla::Extension::TrackingFlags::Flag;
+use Bugzilla::Extension::TrackingFlags::Flag::Bug;
use Bugzilla::Extension::TrackingFlags::Flag::Value;
use Bugzilla::Extension::TrackingFlags::Flag::Visibility;
@@ -338,8 +339,16 @@ sub _update_db_values {
if ($value->{id}) {
my $value_obj = Bugzilla::Extension::TrackingFlags::Flag::Value->new($value->{id})
|| ThrowCodeError('tracking_flags_invalid_item_id', { item => 'flag value', id => $flag->{id} });
- $value_obj->set_all($object_set);
- $value_obj->update();
+ my $old_value = $value_obj->value;
+ if ($object_set->{value} ne $old_value) {
+ $value_obj->set_all($object_set);
+ $value_obj->update();
+ Bugzilla::Extension::TrackingFlags::Flag::Bug->update_all_values({
+ value_obj => $value_obj,
+ old_value => $old_value,
+ new_value => $value_obj->value,
+ });
+ }
} else {
$object_set->{tracking_flag_id} = $flag_obj->flag_id;
Bugzilla::Extension::TrackingFlags::Flag::Value->create($object_set);
diff --git a/extensions/TrackingFlags/lib/Flag/Bug.pm b/extensions/TrackingFlags/lib/Flag/Bug.pm
index 5e2886e66..ea382a29d 100644
--- a/extensions/TrackingFlags/lib/Flag/Bug.pm
+++ b/extensions/TrackingFlags/lib/Flag/Bug.pm
@@ -122,6 +122,22 @@ sub preload_all_the_things {
}
}
+##############################
+#### Class Methods ####
+##############################
+
+sub update_all_values {
+ my ($invocant, $params) = @_;
+ my $dbh = Bugzilla->dbh;
+ $dbh->do(
+ "UPDATE tracking_flags_bugs SET value=? WHERE tracking_flag_id=? AND value=?",
+ undef,
+ $params->{new_value},
+ $params->{value_obj}->tracking_flag_id,
+ $params->{old_value},
+ );
+}
+
###############################
#### Validators ####
###############################
diff --git a/extensions/TryAutoLand/Extension.pm b/extensions/TryAutoLand/Extension.pm
index 8aaadff95..40dbb70d9 100644
--- a/extensions/TryAutoLand/Extension.pm
+++ b/extensions/TryAutoLand/Extension.pm
@@ -61,7 +61,7 @@ sub db_schema_abstract_schema {
$args->{'schema'}->{'autoland_attachments'} = {
FIELDS => [
attach_id => {
- TYPE => 'INT5',
+ TYPE => 'INT3',
NOTNULL => 1,
PRIMARYKEY => 1,
REFERENCES => {
diff --git a/skins/standard/global.css b/skins/standard/global.css
index 63229886a..8e7799fb1 100644
--- a/skins/standard/global.css
+++ b/skins/standard/global.css
@@ -472,6 +472,7 @@ div.user_match {
.arrow_container {
margin: 0 2px;
+ display: inline-block;
}
.collapsed {