From 6aa68c7825ea2602bfb37c83115e04c70aa3a5af Mon Sep 17 00:00:00 2001
From: vharseko <vharseko@openam.org.ru>
Date: Fri, 26 Oct 2018 20:00:05 +0000
Subject: [PATCH] Merge pull request #26 from vharseko/master

---
 forgerock-parent                                                                      |    2 +-
 opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/DefaultTCPNIOTransport.java |    6 +++---
 opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/ServerTCPNIOTransport.java  |   19 +------------------
 3 files changed, 5 insertions(+), 22 deletions(-)

diff --git a/forgerock-parent b/forgerock-parent
index 877532c..837b927 160000
--- a/forgerock-parent
+++ b/forgerock-parent
@@ -1 +1 @@
-Subproject commit 877532cd02d579e83b30386d8fe35c6b385fc560
+Subproject commit 837b927afd15f2463ac850f75c350261f4d69815
diff --git a/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/DefaultTCPNIOTransport.java b/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/DefaultTCPNIOTransport.java
index e2760de..39c0313 100644
--- a/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/DefaultTCPNIOTransport.java
+++ b/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/DefaultTCPNIOTransport.java
@@ -20,7 +20,7 @@
 
 import org.forgerock.i18n.LocalizableMessage;
 import org.forgerock.i18n.slf4j.LocalizedLogger;
-import org.glassfish.grizzly.memory.HeapMemoryManager;
+import org.glassfish.grizzly.memory.PooledMemoryManager;
 import org.glassfish.grizzly.nio.transport.TCPNIOTransport;
 import org.glassfish.grizzly.nio.transport.TCPNIOTransportBuilder;
 import org.glassfish.grizzly.strategies.SameThreadIOStrategy;
@@ -135,8 +135,8 @@
             // Enabled by default.
             builder.setReuseAddress(Boolean.parseBoolean(reuseAddressStr));
         }
-        // Default heap manager has changed in grizzly 2.3.27 to the more memory consuming PooledMemoryManager
-        builder.setMemoryManager(new HeapMemoryManager());
+        builder.setMemoryManager(new PooledMemoryManager(true));
+        
 
         final TCPNIOTransport transport = builder.build();
 
diff --git a/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/ServerTCPNIOTransport.java b/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/ServerTCPNIOTransport.java
index 5e6c1b6..4329cc4 100644
--- a/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/ServerTCPNIOTransport.java
+++ b/opendj-grizzly/src/main/java/org/forgerock/opendj/grizzly/ServerTCPNIOTransport.java
@@ -37,7 +37,6 @@
 
     private static final LocalizedLogger logger = LocalizedLogger.getLoggerForThisClass();
     static final ServerTCPNIOTransport SERVER_TRANSPORT = new ServerTCPNIOTransport();
-    private static final long MB = 1024 * 1024;
 
     private ServerTCPNIOTransport() {
         // Prevent instantiation.
@@ -98,24 +97,8 @@
             // Enabled by default.
             builder.setReuseAddress(Boolean.parseBoolean(reuseAddressStr));
         }
-        float heapPercent;
-        if (Runtime.getRuntime().maxMemory() < 1024 * MB) {
-            // Low heap
-            heapPercent = 0.01f;
-        } else {
-            // Compute a percentage to try to reach roughly 64Mb (big enough (tm))
-            heapPercent = 64f * MB / Runtime.getRuntime().maxMemory();
-        }
         // Force usage of PooledMemoryManager which allows to use grizzly's buffers across threads.
-        builder.setMemoryManager(new PooledMemoryManager(
-                1024,  // Initial buffer size
-                3,     // Number of pools (with growing factor below this give us pools of 1K, 4K, 16k buffers)
-                4,     // Growing factor to apply on the size of the buffer polled by the next pool
-                selectorThreadCount,    // Number of pool slices that every pool will stripe allocation requests across
-                heapPercent, // The percentage of the heap that this manager will use when populating the pools (5%)
-                1f,    // The percentage of buffers to be pre-allocated during MemoryManager initialization (100%)
-                true   // true to use direct buffers or false to use heap buffers
-        ));
+        builder.setMemoryManager(new PooledMemoryManager(true));
 
         final TCPNIOTransport transport = builder.build();
 

--
Gitblit v1.10.0