[
https://issues.apache.org/jira/browse/GEODE-498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Darrel Schneider updated GEODE-498:
-----------------------------------
Component/s: wan
> Callback argument size is not reflected in bucket size for parallel queues
> --------------------------------------------------------------------------
>
> Key: GEODE-498
> URL: https://issues.apache.org/jira/browse/GEODE-498
> Project: Geode
> Issue Type: Bug
> Components: wan
> Reporter: Dan Smith
> Assignee: Dan Smith
>
> I found this while tracking down GEODE-244. This appears to be a new problem
> that was introduced by the off heap changes. This is problematic because this
> size is used for rebalancing calculations, so bugs in the reported size could
> cause rebalancing issues.
> The issue is that the size reported by BucketRegion.getTotalBytes() is
> incorrect for parallel async event queues. The size does not include the size
> of the callback argument.
> I tracked this down to this code in BucketRegion.calcMemSize, which looks
> like it was added for offheap:
> {code}
> static int calcMemSize(Object value) {
> if (value != null && (value instanceof GatewaySenderEventImpl)) {
> return ((GatewaySenderEventImpl)value).getSerializedValueSize();
> }
> ...
> }
> {code}
> Interestingly, it looks like for the purposes of eviction, we do include the
> callback argument size, because the MemLRUCapacityController calls
> GatewaySenderEventImpl.getSizeInBytes
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)