diff options
author | Byron Jones <bjones@mozilla.com> | 2013-10-14 22:03:25 +0200 |
---|---|---|
committer | Byron Jones <bjones@mozilla.com> | 2013-10-14 22:03:25 +0200 |
commit | 0e32c5241cc8d603326feff068f08106ad600e2a (patch) | |
tree | a58a2bbb2e0fe8ebd138f335eab0b9bdef516f2b /Bugzilla | |
parent | 8736d764006115a9e5bbded30f2d05a4fa1b5329 (diff) | |
download | bugzilla-0e32c5241cc8d603326feff068f08106ad600e2a.tar.gz bugzilla-0e32c5241cc8d603326feff068f08106ad600e2a.tar.xz |
Bug 926241: Multiple lock wait timeout exceeded errors on the bugs_activity table
Diffstat (limited to 'Bugzilla')
-rw-r--r-- | Bugzilla/Bug.pm | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/Bugzilla/Bug.pm b/Bugzilla/Bug.pm index 1de761985..6f3107d5c 100644 --- a/Bugzilla/Bug.pm +++ b/Bugzilla/Bug.pm @@ -30,7 +30,6 @@ package Bugzilla::Bug; -use 5.10.0; use strict; use Bugzilla::Attachment; @@ -4043,11 +4042,7 @@ sub _join_activity_entries { # Update the bugs_activity table to reflect changes made in bugs. sub LogActivityEntry { my ($i, $col, $removed, $added, $whoid, $timestamp, $comment_id) = @_; - state $sth = - Bugzilla->dbh->prepare('INSERT INTO bugs_activity - (bug_id, who, bug_when, fieldid, removed, added, comment_id) - VALUES (?, ?, ?, ?, ?, ?, ?)'); - + my $dbh = Bugzilla->dbh; # in the case of CCs, deps, and keywords, there's a possibility that someone # might try to add or remove a lot of them at once, which might take more # space than the activity table allows. We'll solve this by splitting it @@ -4071,7 +4066,10 @@ sub LogActivityEntry { trick_taint($addstr); trick_taint($removestr); my $fieldid = get_field_id($col); - $sth->execute($i, $whoid, $timestamp, $fieldid, $removestr, $addstr, $comment_id); + $dbh->do("INSERT INTO bugs_activity + (bug_id, who, bug_when, fieldid, removed, added, comment_id) + VALUES (?, ?, ?, ?, ?, ?, ?)", + undef, ($i, $whoid, $timestamp, $fieldid, $removestr, $addstr, $comment_id)); } } |