[ https://issues.apache.org/jira/browse/GEODE-8894?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17279749#comment-17279749 ]
ASF GitHub Bot commented on GEODE-8894: --------------------------------------- ringles commented on a change in pull request #5978: URL: https://github.com/apache/geode/pull/5978#discussion_r571044531 ########## File path: geode-core/src/main/java/org/apache/geode/Delta.java ########## @@ -55,7 +55,20 @@ void fromDelta(DataInput in) throws IOException, InvalidDeltaException; /** - * Allows Delta implementations to ensure bucket sizes are recalculated after delta is applied + * By default, buckets do not recalculate their size when deltas are applied. This optimizes for + * the case where the sie of an entry does not change. However, if the size does increase or + * decrease, this default behavior can result in the memory usage statistics becoming inaccurate. + * + * There is a global Geode property, DELTAS_RECALCULATE_SIZE, which can be used to cause all Review comment: New version of comment up. ---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org > Allow individual deltas to trigger bucket size recalculation > ------------------------------------------------------------ > > Key: GEODE-8894 > URL: https://issues.apache.org/jira/browse/GEODE-8894 > Project: Geode > Issue Type: New Feature > Components: core, serialization > Affects Versions: 1.14.0 > Reporter: Raymond Ingles > Priority: Major > Labels: pull-request-available > > The Redis subsystem uses Deltas heavily, but by default deltas do not trigger > an update to the size of their buckets. This leads to incorrect memory usage > accounting over the long term, especially with the use of Redis commands like > "APPEND". > It is possible to set the system property "DELTAS_RECALCULATE_SIZE", but this > is a global value that would affect the processing of all deltas, including > non-Redis operations. > Instead, we will add a new default method to the Delta interface, that can be > overridden by individual Delta implementations (such as Redis). This will > trigger the same behavior as DELTAS_RECALCULATE_SIZE, but on a per-delta > basis. Thus, other Geode operations will not force bucket size recalculations > unless the global property is set, but Redis statistics will be correct. > Other types of delta operations may find this useful in the future. -- This message was sent by Atlassian Jira (v8.3.4#803005)