Matt, I found my memory leak in the cleanup version of gmond (This patch allows gmetrics to specify a --dmax time that is enforced: after dmax seconds after receiving the metric it will be deleted from the hash table (and XML output). Very useful for process gmetrics).
It turns out that hash_delete(key, hash) will delete the key, but not the value. Instead it returns a pointer to the value, which the caller deletes at his leisure. I just needed to read the hash.c code more carefully. The new patch is receiving 100 gmetrics an hour and deleting them on call, with no apparent mem leaks. I would like to add this to a post-2.5.0 monitor core, perhaps 2.5.1. Good luck with the ia64 port! -Federico SDSC Rocks
