You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Darrel Schneider (JIRA)" <ji...@apache.org> on 2019/04/23 01:33:00 UTC
[jira] [Assigned] (GEODE-6695)
ClientProxyMembershipID.canonicalReference allocates lots of objects
[ https://issues.apache.org/jira/browse/GEODE-6695?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Darrel Schneider reassigned GEODE-6695:
---------------------------------------
Assignee: Darrel Schneider
> ClientProxyMembershipID.canonicalReference allocates lots of objects
> --------------------------------------------------------------------
>
> Key: GEODE-6695
> URL: https://issues.apache.org/jira/browse/GEODE-6695
> Project: Geode
> Issue Type: Improvement
> Components: serialization
> Reporter: Darrel Schneider
> Assignee: Darrel Schneider
> Priority: Major
>
> ClientProxyMembershipID.canonicalReference ends up allocating a large number of objects that get garbage collected. The cause of this is that when it goes to do a lookup on the ConcurrentHashMap to see if a canonical id exists, it calls ClientProxyMembershipID.hashCode which in turn calls isDurable(). This method calls getDistributedMember which does a deserialization of the identity byte array which does lots of object allocations.
> I think we can instead check for a ClientProxyMembershipID whose uniqueId and identity are equal. If we find one then we can use it as the canonical id.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)