Special case Keep Alive packets from Anti Xray

If a server enables Anti Xray, packet sending can be delayed until the
chunk has been obfuscated, blocking the entire queue from going out.

On a busy server, considering Anti Xray can only operate on a single
thread, it is quite possible the obfuscation backlog can get quite behind
resulting in a delay of sending packets.

And logging in is a clear area where lots of chunks are going to be queued
for obfuscation....

We should probably special case a few more than this (such as chat),
but this will hopefully help the keep alive issues some people run into.
This commit is contained in:
Aikar
2020-05-02 00:53:57 -04:00
parent 89e22765be
commit 6daf4a783f
2 changed files with 21 additions and 21 deletions

View File

@@ -72,7 +72,7 @@ index adfc7aae2..460fda05a 100644
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
index c62da4131..af8ab73fe 100644
index c62da4131..0c7ba0718 100644
--- a/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
+++ b/src/main/java/org/bukkit/command/defaults/ReloadCommand.java
@@ -0,0 +0,0 @@ public class ReloadCommand extends BukkitCommand {
@@ -98,4 +98,12 @@ index c62da4131..af8ab73fe 100644
} else if ("confirm".equalsIgnoreCase(args[0])) {
confirmed = true;
} else {
@@ -0,0 +0,0 @@ public class ReloadCommand extends BukkitCommand {
@NotNull
@Override
public List<String> tabComplete(@NotNull CommandSender sender, @NotNull String alias, @NotNull String[] args) throws IllegalArgumentException {
- return java.util.Collections.singletonList("permissions"); // Paper
+ return com.google.common.collect.Lists.newArrayList("permissions", "commands"); // Paper
}
}
--