Waterfall/BungeeCord-Patches/0061-Set-Netty-pooled-buffer-size-to-4MB.patch
Shane Freeder 5d64a21724
Updated Upstream (BungeeCord)
Upstream has released updates that appears to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

BungeeCord Changes:
c96628b7 #3094: Fix TO_CLIENT max Chat string length
e5ded9a2 Apply stricter length limits to client strings
2021-05-21 09:04:26 +01:00

34 lines
1.5 KiB
Diff

From a1ae8aaff1a3e357072baf7115d1eadbc9c148a5 Mon Sep 17 00:00:00 2001
From: Andrew Steinborn <git@steinborn.me>
Date: Sat, 24 Apr 2021 17:52:33 +0100
Subject: [PATCH] Set Netty pooled buffer size to 4MB
diff --git a/proxy/src/main/java/net/md_5/bungee/BungeeCordLauncher.java b/proxy/src/main/java/net/md_5/bungee/BungeeCordLauncher.java
index 0db3d76a..35680528 100644
--- a/proxy/src/main/java/net/md_5/bungee/BungeeCordLauncher.java
+++ b/proxy/src/main/java/net/md_5/bungee/BungeeCordLauncher.java
@@ -26,6 +26,19 @@ public class BungeeCordLauncher
System.setProperty( "jdk.util.jar.enableMultiRelease", "force" );
}
+ // Waterfall start
+ // By default, Netty allocates 16MiB arenas for the PooledByteBufAllocator. This is too much
+ // memory for Minecraft, which imposes a maximum packet size of 2MiB! We'll use 4MiB as a more
+ // sane default.
+ //
+ // Note: io.netty.allocator.pageSize << io.netty.allocator.maxOrder is the formula used to
+ // compute the chunk size. We lower maxOrder from its default of 11 to 9. (We also use a null
+ // check, so that the user is free to choose another setting if need be.)
+ if (System.getProperty("io.netty.allocator.maxOrder") == null) {
+ System.setProperty("io.netty.allocator.maxOrder", "9");
+ }
+ // Waterfall end
+
OptionParser parser = new OptionParser();
parser.allowsUnrecognizedOptions();
parser.acceptsAll( Arrays.asList( "help" ), "Show the help" );
--
2.31.1