summaryrefslogtreecommitdiff
path: root/sql
diff options
context:
space:
mode:
authorunknown <knielsen@knielsen-hq.org>2013-11-08 15:14:18 +0100
committerunknown <knielsen@knielsen-hq.org>2013-11-08 15:14:18 +0100
commit7876d53b5f17e2c906f41d97e22514c1e36640bb (patch)
tree10548a3bb91033af379e34feee791323ab5cb32f /sql
parent4bf339453d2059bb7ab2e7e74cb25745a7c7ba5e (diff)
downloadmariadb-git-7876d53b5f17e2c906f41d97e22514c1e36640bb.tar.gz
MDEV-4506: Parallel replication.
Delete any left-over deferred_event from rpl_group_info when deleting the parent object, to protect against memory leaks.
Diffstat (limited to 'sql')
-rw-r--r--sql/rpl_rli.cc1
-rw-r--r--sql/rpl_rli.h3
2 files changed, 4 insertions, 0 deletions
diff --git a/sql/rpl_rli.cc b/sql/rpl_rli.cc
index cc265f25c9d..8a0328dd89c 100644
--- a/sql/rpl_rli.cc
+++ b/sql/rpl_rli.cc
@@ -1489,6 +1489,7 @@ rpl_group_info::rpl_group_info(Relay_log_info *rli_)
rpl_group_info::~rpl_group_info()
{
free_annotate_event();
+ delete deferred_events;
mysql_mutex_destroy(&sleep_lock);
mysql_cond_destroy(&sleep_cond);
}
diff --git a/sql/rpl_rli.h b/sql/rpl_rli.h
index 390936114bc..ff2ffd0b366 100644
--- a/sql/rpl_rli.h
+++ b/sql/rpl_rli.h
@@ -592,7 +592,10 @@ public:
void cleanup_after_session()
{
if (deferred_events)
+ {
delete deferred_events;
+ deferred_events= NULL;
+ }
};
/**