From taurel at esrf.fr Mon Sep 1 10:41:42 2008 From: taurel at esrf.fr (Emmanuel TAUREL) Date: Mon Sep 1 08:41:49 2008 Subject: [omniNotify] Notifd memory consumption Message-ID: <48BB9CB6.2090207@esrf.fr> Hello everybody, We are using omniNotify release 2.1 with the 64 bits patch and omniORB 4.1 running on linux boxes. We are using the Push-Push model with Structured Event. Our application (the consumer) is connected to an event channel using a channel StucturedProxyPushSupplier object. It is using the add_filter()/remove_filter() calls (available through the FilterAdmin interface inherited by the StructuredProxyPushSupplier) to periodically add/remove filters. We notice a regular memory increase of the notifd process as reported by Valgrind using its "massif" tool. This memory increase is not due to a classical leak (new without delete) but to objects added into a container and never deleted. Valgrind shows that the linked list in the class RDIChangePool has more and more elements which are never deleted. This element are inserted into the list due to calls of the method RDIChangePool::insert_change(). I have made a test by commenting out these calls to this method RDIChangePool::insert_change() in the method EventChannel_i::propagate_schange(). Obviously, I have lost the offer_change and subscription_change() features but I don't use them. Now, the memory consumption stays constant. Is there any expert to comment on this ? Thank's for your answer Emmanuel Taurel