curator-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Joe Littlejohn (JIRA)" <>
Subject [jira] [Created] (CURATOR-286) Memory leak in service discovery
Date Mon, 11 Jan 2016 12:35:39 GMT
Joe Littlejohn created CURATOR-286:

             Summary: Memory leak in service discovery
                 Key: CURATOR-286
             Project: Apache Curator
          Issue Type: Bug
          Components: Recipes
    Affects Versions: 2.9.1
            Reporter: Joe Littlejohn
            Priority: Critical


I'm seeing a memory leak in my application which makes use of service discovery.

I've taken heap dumps and I see:

* Hundreds of thousands of NamespaceWatcher instances. The client, actualWatcher and curatorWatcher
fields are all null, so these are closed NamespaceWatchers.
* Thousands of PathChildrenCache instances. Each one has a 'path' value that refers to one
of the services I'm lookup up (using a service provider). The state fields shows that all
these PathChildrenCache instances are CLOSED.

In my application I'm using a service provider to get an instance, then closing that service
provider. It seems that even after doing this, there's still a reference to the NamespaceWatcher
held in ZKWatchManager field childWatches (and this refers to the the PathChildrenCache.

This message was sent by Atlassian JIRA

View raw message