[ https://issues.apache.org/jira/browse/GEODE-9331?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Darrel Schneider updated GEODE-9331: ------------------------------------ Labels: GeodeOperationAPI (was: ) > ConnectionTable maintains WeakReference to thread local map for no reason > ------------------------------------------------------------------------- > > Key: GEODE-9331 > URL: https://issues.apache.org/jira/browse/GEODE-9331 > Project: Geode > Issue Type: Improvement > Components: membership > Reporter: Darrel Schneider > Priority: Major > Labels: GeodeOperationAPI > > Every time a p2p thread owned connection is created it is added to a HashMap > kept by the thread in a ThreadLocal. A WeakReference referencing that HashMap > is also added to an ArrayList. But this ArrayList is not actually used for > anything. It is iterated over in ConnectionTable.close to close any of the > thread local connections but all of these connections are also in the > "threadConnectionMap" which is iterated over during close. > So the ArrayList "threadConnMaps" can be removed with no loss of > functionality. Getting rid of it will improve performance the first time a > thread creates a thread owned connection and will reduce the amount of memory > consumed (the ArrayList will have at least one entry for every thread using > thread owned connections but it may have more since the WeakReference can be > slow to be garbage collected). -- This message was sent by Atlassian Jira (v8.3.4#803005)