[SCM] CTDB repository - branch 1.0.56 updated -
25000c39a9013bf60c6a8a0396c168df14365adb
Ronnie Sahlberg
sahlberg at samba.org
Tue Sep 16 02:26:31 GMT 2008
The branch, 1.0.56 has been updated
via 25000c39a9013bf60c6a8a0396c168df14365adb (commit)
via 2e2ff96ef5508fabc1c22b9c37944a0b707ba809 (commit)
via 34d823cf6b8c728249d3de378659e6f678cde275 (commit)
via 960c18d318194afcf847b84e16899c1db385ccec (commit)
via 2bac955be1f81d692a448769eb375b768a57c0f6 (commit)
from 196973fef38a9b258e0976d5454161d11d573ddc (commit)
http://gitweb.samba.org/?p=sahlberg/ctdb.git;a=shortlog;h=1.0.56
- Log -----------------------------------------------------------------
commit 25000c39a9013bf60c6a8a0396c168df14365adb
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date: Tue Sep 16 12:20:17 2008 +1000
Cant use '-' in the release version. switch to '_'
commit 2e2ff96ef5508fabc1c22b9c37944a0b707ba809
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date: Tue Sep 16 12:16:01 2008 +1000
New version 1.0.56-1
This relases fixes three memory leaks from the 1.0.56 release.
commit 34d823cf6b8c728249d3de378659e6f678cde275
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date: Tue Sep 16 09:00:48 2008 +1000
fix a slow memory leak in the recovery daemon in the error paths for the
memdump function
(cherry picked from commit 5e641ef9d6cca286061138a9680dcf2495736e8b)
commit 960c18d318194afcf847b84e16899c1db385ccec
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date: Tue Sep 16 07:55:57 2008 +1000
fix some slow memory leaks in the vacuuming handler in the recovery
daemon
(cherry picked from commit 95bf36559d62f29e6f538f3a173b504ef3258341)
commit 2bac955be1f81d692a448769eb375b768a57c0f6
Author: Ronnie Sahlberg <ronniesahlberg at gmail.com>
Date: Tue Sep 16 06:50:28 2008 +1000
From Volker L
Fix a slow memory leak in the recovery daemon if there is a recoery
triggered during the public ip reassignment process
(cherry picked from commit 0aca4daf908b76d6013ff3dfad41beb9114fc1a3)
-----------------------------------------------------------------------
Summary of changes:
packaging/RPM/ctdb.spec | 4 +++-
server/ctdb_recoverd.c | 10 ++++++++++
2 files changed, 13 insertions(+), 1 deletions(-)
Changeset truncated at 500 lines:
diff --git a/packaging/RPM/ctdb.spec b/packaging/RPM/ctdb.spec
index 93b9d3f..6c6d8d3 100644
--- a/packaging/RPM/ctdb.spec
+++ b/packaging/RPM/ctdb.spec
@@ -5,7 +5,7 @@ Vendor: Samba Team
Packager: Samba Team <samba at samba.org>
Name: ctdb
Version: 1.0
-Release: 56
+Release: 56_1
Epoch: 0
License: GNU GPL version 3
Group: System Environment/Daemons
@@ -118,6 +118,8 @@ fi
%{_includedir}/ctdb_private.h
%changelog
+* Tue Sep 16 2008 : Version 1.0.56-1
+ - backported fixes for three memory leaks from HEAD
* Mon Aug 11 2008 : Version 1.0.56
- fix a memory leak in the recovery daemon.
* Mon Aug 11 2008 : Version 1.0.55
diff --git a/server/ctdb_recoverd.c b/server/ctdb_recoverd.c
index c503aa5..b1bab7a 100644
--- a/server/ctdb_recoverd.c
+++ b/server/ctdb_recoverd.c
@@ -880,6 +880,7 @@ static void vacuum_fetch_handler(struct ctdb_context *ctdb, uint64_t srvid,
r = (struct ctdb_rec_data *)&recs->data[0];
if (recs->count == 0) {
+ talloc_free(tmp_ctx);
return;
}
@@ -888,6 +889,7 @@ static void vacuum_fetch_handler(struct ctdb_context *ctdb, uint64_t srvid,
for (v=rec->vacuum_info;v;v=v->next) {
if (srcnode == v->srcnode && recs->db_id == v->ctdb_db->db_id) {
/* we're already working on records from this node */
+ talloc_free(tmp_ctx);
return;
}
}
@@ -930,6 +932,7 @@ static void vacuum_fetch_handler(struct ctdb_context *ctdb, uint64_t srvid,
v = talloc_zero(rec, struct vacuum_info);
if (v == NULL) {
DEBUG(DEBUG_CRIT,(__location__ " Out of memory\n"));
+ talloc_free(tmp_ctx);
return;
}
@@ -940,6 +943,7 @@ static void vacuum_fetch_handler(struct ctdb_context *ctdb, uint64_t srvid,
if (v->recs == NULL) {
DEBUG(DEBUG_CRIT,(__location__ " Out of memory\n"));
talloc_free(v);
+ talloc_free(tmp_ctx);
return;
}
v->r = (struct ctdb_rec_data *)&v->recs->data[0];
@@ -949,6 +953,7 @@ static void vacuum_fetch_handler(struct ctdb_context *ctdb, uint64_t srvid,
talloc_set_destructor(v, vacuum_info_destructor);
vacuum_fetch_next(v);
+ talloc_free(tmp_ctx);
}
@@ -1748,6 +1753,7 @@ static void mem_dump_handler(struct ctdb_context *ctdb, uint64_t srvid,
if (data.dsize != sizeof(struct rd_memdump_reply)) {
DEBUG(DEBUG_ERR, (__location__ " Wrong size of return address.\n"));
+ talloc_free(tmp_ctx);
return;
}
rd = (struct rd_memdump_reply *)data.dptr;
@@ -1770,6 +1776,7 @@ DEBUG(DEBUG_ERR, ("recovery master memory dump\n"));
ret = ctdb_send_message(ctdb, rd->pnn, rd->srvid, *dump);
if (ret != 0) {
DEBUG(DEBUG_ERR,("Failed to send rd memdump reply message\n"));
+ talloc_free(tmp_ctx);
return;
}
@@ -2181,6 +2188,7 @@ static int verify_ip_allocation(struct ctdb_context *ctdb, uint32_t pnn)
if (timeval_compare(&uptime1->last_recovery_started,
&uptime2->last_recovery_started) != 0) {
DEBUG(DEBUG_NOTICE, (__location__ " last recovery time changed while we read the public ip list. skipping public ip address check\n"));
+ talloc_free(mem_ctx);
return 0;
}
@@ -2188,6 +2196,7 @@ static int verify_ip_allocation(struct ctdb_context *ctdb, uint32_t pnn)
if (timeval_compare(&uptime1->last_recovery_finished,
&uptime2->last_recovery_finished) != 0) {
DEBUG(DEBUG_NOTICE, (__location__ " last recovery time changed while we read the public ip list. skipping public ip address check\n"));
+ talloc_free(mem_ctx);
return 0;
}
@@ -2195,6 +2204,7 @@ static int verify_ip_allocation(struct ctdb_context *ctdb, uint32_t pnn)
if (timeval_compare(&uptime1->last_recovery_finished,
&uptime1->last_recovery_started) != 1) {
DEBUG(DEBUG_NOTICE, (__location__ " in the middle of recovery. skipping public ip address check\n"));
+ talloc_free(mem_ctx);
return 0;
}
--
CTDB repository
More information about the samba-cvs
mailing list