Merge lp:~akopytov/percona-server/bug843587-5.5 into lp:percona-server/5.5

Proposed by Alexey Kopytov
Status: Merged
Approved by: Stewart Smith
Approved revision: no longer in the source branch.
Merged at revision: 140
Proposed branch: lp:~akopytov/percona-server/bug843587-5.5
Merge into: lp:percona-server/5.5
Diff against target: 44 lines (+32/-0)
2 files modified
bug813587.patch (+31/-0)
series (+1/-0)
To merge this branch: bzr merge lp:~akopytov/percona-server/bug843587-5.5
Reviewer Review Type Date Requested Status
Percona developers Pending
Review via email: mp+68582@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Alexey Kopytov (akopytov) wrote :

Fixed a zero current_thd problem discovered by federated.federated_debug: http://jenkins.percona.com/view/Percona%20Server%205.5/job/percona-server-5.5-param/51/

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== added file 'bug813587.patch'
2--- bug813587.patch 1970-01-01 00:00:00 +0000
3+++ bug813587.patch 2011-07-21 09:18:24 +0000
4@@ -0,0 +1,31 @@
5+# name : bug813587.patch
6+# maintainer : Alexey
7+#
8+# Fix for LP bug #813587 / MySQL bug #51196 / MySQL bug #61790
9+#
10+# Clear MySQL connection errors in ha_federated::close(), since they
11+# can affect queries on other tables due to table cache eviction.
12+#
13+diff -ruN Percona-Server.orig/storage/federated/ha_federated.cc Percona-Server/storage/federated/ha_federated.cc
14+--- Percona-Server.orig/storage/federated/ha_federated.cc 2011-05-11 15:54:12.000000000 +0400
15++++ Percona-Server/storage/federated/ha_federated.cc 2011-07-21 13:07:30.000000000 +0400
16+@@ -1675,6 +1675,8 @@ int ha_federated::open(const char *name,
17+
18+ int ha_federated::close(void)
19+ {
20++ THD *thd= current_thd;
21++
22+ DBUG_ENTER("ha_federated::close");
23+
24+ free_result();
25+@@ -1685,6 +1687,10 @@ int ha_federated::close(void)
26+ mysql_close(mysql);
27+ mysql= NULL;
28+
29++ /* Clear possible errors from mysql_close(), see LP bug #813587. */
30++ if (thd)
31++ thd->clear_error();
32++
33+ DBUG_RETURN(free_share(share));
34+ }
35+
36
37=== modified file 'series'
38--- series 2011-07-09 16:07:01 +0000
39+++ series 2011-07-21 09:18:24 +0000
40@@ -51,3 +51,4 @@
41 file-contents.patch
42 slave_timeout_fix.patch
43 utf8_general50_ci.patch
44+bug813587.patch

Subscribers

People subscribed via source and target branches