From 00e33d6e0c0c6ddf4edf7271c61c5021882dfb62 Mon Sep 17 00:00:00 2001 From: Ludovic Orban Date: Tue, 14 Jun 2022 17:05:42 +0200 Subject: [PATCH] #8161 add memory heuristic to ArrayRetainableByteBufferPool Signed-off-by: Ludovic Orban --- .../eclipse/jetty/io/ArrayRetainableByteBufferPool.java | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayRetainableByteBufferPool.java b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayRetainableByteBufferPool.java index cc2807918fb8..e08f0e04f3ea 100644 --- a/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayRetainableByteBufferPool.java +++ b/jetty-io/src/main/java/org/eclipse/jetty/io/ArrayRetainableByteBufferPool.java @@ -47,12 +47,12 @@ public class ArrayRetainableByteBufferPool implements RetainableByteBufferPool, public ArrayRetainableByteBufferPool() { - this(0, -1, -1, Integer.MAX_VALUE, -1L, -1L); + this(0, -1, -1, Integer.MAX_VALUE); } public ArrayRetainableByteBufferPool(int minCapacity, int factor, int maxCapacity, int maxBucketSize) { - this(minCapacity, factor, maxCapacity, maxBucketSize, -1L, -1L); + this(minCapacity, factor, maxCapacity, maxBucketSize, 0L, 0L); } public ArrayRetainableByteBufferPool(int minCapacity, int factor, int maxCapacity, int maxBucketSize, long maxHeapMemory, long maxDirectMemory) @@ -91,8 +91,8 @@ protected ArrayRetainableByteBufferPool(int minCapacity, int factor, int maxCapa _maxCapacity = maxCapacity; _direct = directArray; _indirect = indirectArray; - _maxHeapMemory = maxHeapMemory; - _maxDirectMemory = maxDirectMemory; + _maxHeapMemory = (maxHeapMemory != 0L) ? maxHeapMemory : Runtime.getRuntime().maxMemory() / 4; + _maxDirectMemory = (maxDirectMemory != 0L) ? maxDirectMemory : Runtime.getRuntime().maxMemory() / 4; _bucketIndexFor = bucketIndexFor; }