Files
Purpur/patches/server/0017-Lagging-threshold.patch
granny 8ea46a7e26 Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly

Paper Changes:
PaperMC/Paper@a3dfe6d Updated Upstream (Bukkit/CraftBukkit/Spigot) (#6722)
PaperMC/Paper@fdd5c65 Fix CraftCriteria defaults map (#6723)
PaperMC/Paper@d54e8c5 Support components in command permission msgs (#6676)
PaperMC/Paper@e155002 Fix EntityPortalExitEvent not being called (#5617)
PaperMC/Paper@e4d8c47 Update adventure and fix command perm serialization NPE (#6729)
PaperMC/Paper@0cdeeef Remove unnecessary Velocity repo from server (#6730)
PaperMC/Paper@a419941 Add download link to the /version command (#6482)
PaperMC/Paper@8e661c6 Deprecate API methods added by 'Close Plugin Class Loaders on Disable' (#6737)
PaperMC/Paper@7991c4b Fix upstream block state factories (#6738)
PaperMC/Paper@bfe5622 Fix EntityPortalExitEvent target location
PaperMC/Paper@3391ccf Discard out of bounds chunks during regionfile header recalculation
PaperMC/Paper@cf4af9f Add config setting for logging player ip addresses. (#6342)
PaperMC/Paper@6dfc0f5 Add getChangedBlockData() property to BlockPhysicsEvent to expose BlockData (#6743)
PaperMC/Paper@0d1e187 Fix kicking ops when whitelist is reloaded (MC-171420) (#6742)
PaperMC/Paper@975f2e5 Filter ip address on join if setting is true (#6748)
2021-10-08 01:57:27 -07:00

58 lines
3.0 KiB
Diff

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Tue, 23 Jul 2019 10:07:16 -0500
Subject: [PATCH] Lagging threshold
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 9ca1ee5030e9139a6df25505ead8a52cceb4af38..44c5a1df4aa5d79e79315a4dc8792bc03fa62fee 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -306,6 +306,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
public static final int TICK_TIME = 1000000000 / MinecraftServer.TPS;
private static final int SAMPLE_INTERVAL = 20; // Paper
public final double[] recentTps = new double[ 3 ];
+ public boolean lagging = false; // Purpur
public final SlackActivityAccountant slackActivityAccountant = new SlackActivityAccountant();
// Spigot end
public static long currentTickLong = 0L; // Paper
@@ -1257,6 +1258,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.recentTps[1] = tps5.getAverage();
this.recentTps[2] = tps15.getAverage();
// Paper end
+ lagging = recentTps[0] < net.pl3x.purpur.PurpurConfig.laggingThreshold; // Purpur
tickSection = curTime;
}
// Spigot end
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index bc5f937e7480d954680c7b9f1d698aff3e28665d..c0e7027ad804d7b801ef8cb94963c113c95735d1 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -188,6 +188,11 @@ public class PurpurConfig {
if (!co.aikar.timings.TimingsManager.hiddenConfigs.contains("server-ip")) co.aikar.timings.TimingsManager.hiddenConfigs.add("server-ip");
}
+ public static double laggingThreshold = 19.0D;
+ private static void tickLoopSettings() {
+ laggingThreshold = getDouble("settings.lagging-threshold", laggingThreshold);
+ }
+
public static int barrelRows = 3;
public static boolean enderChestSixRows = false;
public static boolean enderChestPermissionRows = false;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
index 7dfd5688daf9d1af547773aa07c3733a707db556..9826257347888045b6f59d273c9c275653829d2b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -2729,5 +2729,10 @@ public final class CraftServer implements Server {
public String getServerName() {
return this.getProperties().serverName;
}
+
+ @Override
+ public boolean isLagging() {
+ return getServer().lagging;
+ }
// Purpur end
}