[ 
https://issues.apache.org/jira/browse/GEODE-56?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Anthony Baker closed GEODE-56.
------------------------------

> Put to partitioned region with overflow doesn't properly update 
> numOverflowBytesOnDisk
> --------------------------------------------------------------------------------------
>
>                 Key: GEODE-56
>                 URL: https://issues.apache.org/jira/browse/GEODE-56
>             Project: Geode
>          Issue Type: Bug
>          Components: core
>            Reporter: Dan Smith
>            Assignee: Dan Smith
>             Fix For: 1.0.0-incubating.M1
>
>
> For the purposes of rebalancing, geode keeps track of the amount of data 
> stored on disk in a counter - BucketRegion.numOverflowBytesOnDisk. 
> For regions that have overflow but not persistence, a put that replaces a 
> value that was overflowed on disk does not correctly decrement the counter of 
> bytes overflowed to disk.
> The issue is that that size of the entry on disk is read in an if block 
> testing to see if the region is persistent (dr.isBackup())
> {code}
>           if (dr.isBackup()) {
>             dr.testIsRecoveredAndClear(did); // fixes bug 41409
>             oldValueLength = getValueLength(did);
> {code}
> Later it is used to change the stat, but it oldValueLength may not be set
> {code}
>               incrementBucketStats(region, 1/*InVM*/, -1/*OnDisk*/, 
> -oldValueLength);
> {code}
> The net effect of this issue is that if a lot of puts happen to entries that 
> are overflowed to disk, the size of the bucket will be inflated. This may 
> then cause issues with rebalancing calculations.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to