3656 Ramil Kalimullin 2011-12-23
Fix for bug#11758931 - 51196: SLAVE SQL: GOT AN ERROR WRITING
COMMUNICATION PACKETS, ERROR_CODE: 1160
If idle FEDERATED table is evicted from the table cache when
a connection to remote server is lost, query that initiated
eviction may fail.
If this query is executed by slave SQL thread it may fail as well.
An error of close was stored in diagnostics area, which was later
attributed to the statement that caused eviction.
With this patch FEDERATED clears an error of close.
modified:
storage/federated/ha_federated.cc
3655 Inaam Rana 2011-12-21
Add ChangeLog message.
modified:
storage/innodb_plugin/ChangeLog
=== modified file 'storage/federated/ha_federated.cc'
--- a/storage/federated/ha_federated.cc 2011-06-30 15:37:13 +0000
+++ b/storage/federated/ha_federated.cc 2011-12-23 13:22:48 +0000
@@ -1651,6 +1651,15 @@ int ha_federated::close(void)
mysql_close(mysql);
mysql= NULL;
+ /*
+ mysql_close() might return an error if a remote server's gone
+ for some reason. If that happens while removing a table from
+ the table cache, the error will be propagated to a client even
+ if the original query was not issued against the FEDERATED table.
+ So, don't propagate errors from mysql_close().
+ */
+ table->in_use->clear_error();
+
DBUG_RETURN(free_share(share));
}
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-5.1 branch (ramil:3655 to 3656) Bug#11758931 | Ramil Kalimullin | 25 Dec |