This is an automated email from the ASF dual-hosted git repository. tv pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-jcs.git
commit 4648d38f43d7507b66af7fac9a47cbcabdb3143a Author: Thomas Vandahl <[email protected]> AuthorDate: Thu Mar 19 18:43:40 2026 +0100 Reduce wasting of memory --- .../commons/jcs4/auxiliary/disk/block/BlockDiskKeyStore.java | 4 ++-- .../jcs4/auxiliary/disk/block/AbstractBlockDiskCacheUnitTest.java | 7 ++++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/commons-jcs4-core/src/main/java/org/apache/commons/jcs4/auxiliary/disk/block/BlockDiskKeyStore.java b/commons-jcs4-core/src/main/java/org/apache/commons/jcs4/auxiliary/disk/block/BlockDiskKeyStore.java index f3a54f74..850dbc12 100644 --- a/commons-jcs4-core/src/main/java/org/apache/commons/jcs4/auxiliary/disk/block/BlockDiskKeyStore.java +++ b/commons-jcs4-core/src/main/java/org/apache/commons/jcs4/auxiliary/disk/block/BlockDiskKeyStore.java @@ -124,7 +124,7 @@ public class BlockDiskKeyStore<K> // keep the content size in kB, so 2^31 kB is reasonable value private void addLengthToCacheSize(final int[] value) { - contentSize.addAndGet(value.length * blockSize / 1024 + 1); + contentSize.addAndGet((value.length * blockSize + 1023) / 1024); } /** @@ -204,7 +204,7 @@ public class BlockDiskKeyStore<K> // keep the content size in kB, so 2^31 kB is reasonable value private void subLengthFromCacheSize(final int[] value) { - contentSize.addAndGet(value.length * blockSize / -1024 - 1); + contentSize.addAndGet((value.length * blockSize + 1023) / -1024); } } diff --git a/commons-jcs4-core/src/test/java/org/apache/commons/jcs4/auxiliary/disk/block/AbstractBlockDiskCacheUnitTest.java b/commons-jcs4-core/src/test/java/org/apache/commons/jcs4/auxiliary/disk/block/AbstractBlockDiskCacheUnitTest.java index a44c8783..f3c59086 100644 --- a/commons-jcs4-core/src/test/java/org/apache/commons/jcs4/auxiliary/disk/block/AbstractBlockDiskCacheUnitTest.java +++ b/commons-jcs4-core/src/test/java/org/apache/commons/jcs4/auxiliary/disk/block/AbstractBlockDiskCacheUnitTest.java @@ -264,6 +264,7 @@ public abstract class AbstractBlockDiskCacheUnitTest{ final BlockDiskCacheAttributes cattr = getCacheAttributes(); cattr.setCacheName(cacheName); cattr.setMaxKeySize(100); + cattr.setBlockSizeBytes(1024); cattr.setDiskPath("target/test-sandbox/BlockDiskCacheUnitTest"); final BlockDiskCache<String, String> diskCache = new BlockDiskCache<>(cattr); @@ -288,7 +289,7 @@ public abstract class AbstractBlockDiskCacheUnitTest{ final String cacheName = "testPutGetMatching_SmallWait"; final BlockDiskCacheAttributes cattr = getCacheAttributes(); cattr.setCacheName(cacheName); - cattr.setMaxKeySize(200); + cattr.setMaxKeySize(100); cattr.setBlockSizeBytes(1024); cattr.setDiskPath("target/test-sandbox/BlockDiskCacheUnitTest"); final BlockDiskCache<String, String> diskCache = new BlockDiskCache<>(cattr); @@ -317,7 +318,7 @@ public abstract class AbstractBlockDiskCacheUnitTest{ // SETUP final BlockDiskCacheAttributes cattr = getCacheAttributes(); cattr.setCacheName("testRemove_Group"); - cattr.setMaxKeySize(200); + cattr.setMaxKeySize(100); cattr.setDiskPath("target/test-sandbox/BlockDiskCacheUnitTest"); final BlockDiskCache<GroupAttrName<String>, String> disk = new BlockDiskCache<>(cattr); @@ -370,7 +371,7 @@ public abstract class AbstractBlockDiskCacheUnitTest{ { final BlockDiskCacheAttributes cattr = getCacheAttributes(); cattr.setCacheName("testRemove_PartialKey"); - cattr.setMaxKeySize(200); + cattr.setMaxKeySize(100); cattr.setDiskPath("target/test-sandbox/BlockDiskCacheUnitTest"); final BlockDiskCache<String, String> disk = new BlockDiskCache<>(cattr);
