From 8243604780d562f47af41b9e9b2f78b00d29f424 Mon Sep 17 00:00:00 2001 From: Byron Jones Date: Mon, 12 May 2014 13:11:59 +0800 Subject: Bug 1002357: memached->clear_config isn't always called where required r=dkl, a=glob --- Bugzilla/Field.pm | 2 ++ Bugzilla/Group.pm | 1 + Bugzilla/Milestone.pm | 4 ++-- Bugzilla/Product.pm | 3 +++ 4 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Bugzilla/Field.pm b/Bugzilla/Field.pm index 98cf389a1..6ad8df573 100644 --- a/Bugzilla/Field.pm +++ b/Bugzilla/Field.pm @@ -1058,6 +1058,7 @@ sub create { $field->_update_visibility_values(); $dbh->bz_commit_transaction(); + Bugzilla->memcached->clear_config(); if ($field->custom) { my $name = $field->name; @@ -1096,6 +1097,7 @@ sub update { $dbh->do("UPDATE " . $self->name . " SET visibility_value_id = NULL"); } $self->_update_visibility_values(); + Bugzilla->memcached->clear_config(); return $changes; } diff --git a/Bugzilla/Group.pm b/Bugzilla/Group.pm index 534313d9c..58c9ea19d 100644 --- a/Bugzilla/Group.pm +++ b/Bugzilla/Group.pm @@ -216,6 +216,7 @@ sub update { Bugzilla::Hook::process('group_end_of_update', { group => $self, changes => $changes }); $dbh->bz_commit_transaction(); + Bugzilla->memcached->clear_config(); return $changes; } diff --git a/Bugzilla/Milestone.pm b/Bugzilla/Milestone.pm index daa362c34..83438e7c6 100644 --- a/Bugzilla/Milestone.pm +++ b/Bugzilla/Milestone.pm @@ -113,10 +113,10 @@ sub update { $dbh->do('UPDATE products SET defaultmilestone = ? WHERE id = ? AND defaultmilestone = ?', undef, ($self->name, $self->product_id, $changes->{value}->[0])); - Bugzilla->memcached->clear({ table => 'produles', id => $self->product_id }); - Bugzilla->memcached->clear_config(); + Bugzilla->memcached->clear({ table => 'products', id => $self->product_id }); } $dbh->bz_commit_transaction(); + Bugzilla->memcached->clear_config(); return $changes; } diff --git a/Bugzilla/Product.pm b/Bugzilla/Product.pm index 55c4de0b8..3d4de7430 100644 --- a/Bugzilla/Product.pm +++ b/Bugzilla/Product.pm @@ -102,6 +102,7 @@ sub create { Bugzilla::Hook::process('product_end_of_create', { product => $product }); $dbh->bz_commit_transaction(); + Bugzilla->memcached->clear_config(); return $product; } @@ -258,6 +259,7 @@ sub update { # Changes have been committed. delete $self->{check_group_controls}; Bugzilla->user->clear_product_cache(); + Bugzilla->memcached->clear_config(); return $changes; } @@ -316,6 +318,7 @@ sub remove_from_db { $self->SUPER::remove_from_db(); $dbh->bz_commit_transaction(); + Bugzilla->memcached->clear_config(); # We have to delete these internal variables, else we get # the old lists of products and classifications again. -- cgit v1.2.3-24-g4f1b