Description of problem: If cman cannot send a reply or data message to a client, it allocates memory and queues it up internally. When the client disconnects this memory is not freed.
The fix for this is in git master (cman3) and the STABLE2 branch. git master also has additional code to limit the number of outstanding replies on a connection.
for reference. on STABLE2 branch: This commit fixes the potential leak: commit ae3311d1de243236751a1d8b1970ee413e24d305 This one limits the number of connections: commit 84349029e264e982d6b962ee81b13a9f13419115
Committed to RHEL5 commit b0b6f8fef397d7ec0099fa07475aaad5b2c81bac Author: Christine Caulfield <ccaulfie> Date: Wed Mar 19 10:08:51 2008 +0000 [CMAN] Limit outstanding replies commit f5fee58ee9dcdbc602e0dca002a0b1520f3b866e Author: Christine Caulfield <ccaulfie> Date: Tue Mar 18 15:56:45 2008 +0000 [CMAN] Free up any queued messages when someone disconnects
This was definitely fixed in 5.4. I did not check earlier releases.