You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@geode.apache.org by "Juan Ramos (Jira)" <ji...@apache.org> on 2020/02/13 10:08:00 UTC
[jira] [Resolved] (GEODE-7789) Performance Degradation on Servers
with Client Subscription Introduced in GEODE-7358
[ https://issues.apache.org/jira/browse/GEODE-7789?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Juan Ramos resolved GEODE-7789.
-------------------------------
Fix Version/s: 1.13.0
Resolution: Fixed
> Performance Degradation on Servers with Client Subscription Introduced in GEODE-7358
> ------------------------------------------------------------------------------------
>
> Key: GEODE-7789
> URL: https://issues.apache.org/jira/browse/GEODE-7789
> Project: Geode
> Issue Type: Bug
> Components: client queues, client/server
> Affects Versions: 1.12.0
> Reporter: Juan Ramos
> Assignee: Juan Ramos
> Priority: Major
> Labels: GeodeCommons
> Fix For: 1.13.0
>
> Attachments: Geode_1.10_Count.png, Geode_Develop_Count.png
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> On clusters with pool subscriptions enabled, a performance degradation was introduced by GEODE-7358 for regular cache operations.
> The {{InternalDistributedMember.getDurableClientAttributes()}} method is indirectly invoked by the methods {{hashCode()}} and {{equals()}} within the {{ClientProxyMembershipID}} class, which is stored in several Java Collection classes across the product (including different types of {{Map}} instances).
> Prior to GEODE-7358 the {{DurableClientAttributes}} class instance was cached within the {{NetMember}} class, but now is created every time the method is invoked, resulting in a performance penalty for regular cache operations on servers with subscription enabled (not only extra garbage, the constructor itself also does some string manipulation).
> Using one of our internal testing scenarios and a java profiler we detected that we create ~24 instances of {{DurableClientAttributes}} using Geode 1.10, but ~ 404.037.243 instances using the latest {{develop}} branch (screenshots attached).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)