Updated Upstream (Pufferfish)

Upstream has released updates that appear to apply and compile correctly

Pufferfish Changes:
pufferfish-gg/Pufferfish@d3365b7 Updated Upstream (Paper)
pufferfish-gg/Pufferfish@8043ed7 Port TPS catchup patch
pufferfish-gg/Pufferfish@5b40739 Fix #88
pufferfish-gg/Pufferfish@8d20921 Updated Upstream (Paper)
pufferfish-gg/Pufferfish@6ca0bf8 Updated Upstream (Paper)
pufferfish-gg/Pufferfish@cb1794b Async world saving
This commit is contained in:
granny
2024-01-16 12:51:22 -08:00
parent e4d30e02fd
commit 486515bc3c
11 changed files with 219 additions and 80 deletions

View File

@@ -89,7 +89,7 @@ index 821dc4aeaf48460000682604fba51b340b9738e7..3aa2ce6a2a3d3cdfc372a60419a09f49
}
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b8726064d1b 100644
index 5a7f1e27b9e4d36789a0a835fd81ef117c6802c1..9424785e55c8f31bd6c6029e2d3a6f9fa5e571df 100644
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
@@ -344,13 +344,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -148,9 +148,9 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
- this.profiler.popPush("nextTickWait");
+ //this.profiler.popPush("nextTickWait"); // Purpur
this.mayHaveDelayedTasks = true;
// Purpur start - tps catchup
if (org.purpurmc.purpur.PurpurConfig.tpsCatchup) {
@@ -1249,8 +1249,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.delayedTasksMaxNextTickTimeNanos = Math.max(Util.getNanos() + i, this.nextTickTimeNanos);
// Pufferfish start - tps catchup
@@ -1256,8 +1256,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.tickRateManager.endTickWork();
}
@@ -161,7 +161,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
this.isReady = true;
JvmProfiler.INSTANCE.onServerTick(this.smoothedTickTimeMillis);
}
@@ -1475,7 +1475,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1482,7 +1482,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public void doRunTask(TickTask ticktask) { // CraftBukkit - decompile error
@@ -170,7 +170,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
super.doRunTask(ticktask);
}
@@ -1548,7 +1548,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1555,7 +1555,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
if (playerSaveInterval < 0) {
playerSaveInterval = autosavePeriod;
}
@@ -179,7 +179,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
final boolean fullSave = autosavePeriod > 0 && this.tickCount % autosavePeriod == 0;
try {
this.isSaving = true;
@@ -1563,7 +1563,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1570,7 +1570,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
} finally {
this.isSaving = false;
}
@@ -188,7 +188,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
// Paper end
io.papermc.paper.util.CachedLists.reset(); // Paper
// Paper start - move executeAll() into full server tick timing
@@ -1576,7 +1576,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1583,7 +1583,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
long remaining = (TICK_TIME - (endTime - lastTick)) - catchupTime;
new com.destroystokyo.paper.event.server.ServerTickEndEvent(this.tickCount, ((double)(endTime - lastTick) / 1000000D), remaining).callEvent();
// Paper end
@@ -197,7 +197,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
long j = Util.getNanos() - i;
int k = this.tickCount % 100;
@@ -1592,7 +1592,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1599,7 +1599,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
tickTimes60s.add(this.tickCount, j);
// Paper end
this.logTickTime(l - i);
@@ -206,7 +206,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
org.spigotmc.WatchdogThread.tick(); // Spigot
//co.aikar.timings.TimingsManager.FULL_SERVER_TICK.stopTiming(); // Paper // Purpur
}
@@ -1674,11 +1674,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1681,11 +1681,11 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
});
// Paper end - Folia scheduler API
io.papermc.paper.adventure.providers.ClickCallbackProviderImpl.CALLBACK_MANAGER.handleQueue(this.tickCount); // Paper
@@ -220,7 +220,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
//Iterator iterator = this.getAllLevels().iterator(); // Paper - moved down
// CraftBukkit start
@@ -1721,18 +1721,18 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1728,18 +1728,18 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
worldserver.hasEntityMoveEvent = io.papermc.paper.event.entity.EntityMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Paper
worldserver.hasRidableMoveEvent = org.purpurmc.purpur.event.entity.RidableMoveEvent.getHandlerList().getRegisteredListeners().length > 0; // Purpur
@@ -244,7 +244,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
try {
//worldserver.timings.doTick.startTiming(); // Spigot // Purpur
@@ -1750,17 +1750,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1757,17 +1757,17 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
throw new ReportedException(crashreport);
}
@@ -266,7 +266,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
//MinecraftTimings.playerListTimer.startTiming(); // Spigot // Paper // Purpur
this.playerList.tick();
//MinecraftTimings.playerListTimer.stopTiming(); // Spigot // Paper // Purpur
@@ -1768,7 +1768,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1775,7 +1775,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
GameTestTicker.SINGLETON.tick();
}
@@ -275,7 +275,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
//MinecraftTimings.tickablesTimer.startTiming(); // Spigot // Paper // Purpur
for (int i = 0; i < this.tickables.size(); ++i) {
@@ -1776,7 +1776,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1783,7 +1783,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
//MinecraftTimings.tickablesTimer.stopTiming(); // Spigot // Paper // Purpur
@@ -284,7 +284,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
iterator = this.playerList.getPlayers().iterator();
while (iterator.hasNext()) {
@@ -1786,7 +1786,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1793,7 +1793,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
entityplayer.connection.resumeFlushing();
}
@@ -293,7 +293,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
}
private void synchronizeTime(ServerLevel world) {
@@ -1794,7 +1794,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1801,7 +1801,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public void forceTimeSynchronization() {
@@ -302,7 +302,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
Iterator iterator = this.getAllLevels().iterator();
while (iterator.hasNext()) {
@@ -1803,7 +1803,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -1810,7 +1810,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.synchronizeTime(worldserver);
}
@@ -311,7 +311,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
}
public boolean isNetherEnabled() {
@@ -2467,7 +2467,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2474,7 +2474,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public ProfilerFiller getProfiler() {
@@ -320,7 +320,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
return this.profiler;
}
@@ -2707,7 +2707,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2714,7 +2714,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
// CraftBukkit end
private void startMetricsRecordingTick() {
@@ -329,7 +329,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
this.metricsRecorder = ActiveMetricsRecorder.createStarted(new ServerMetricsSamplersProvider(Util.timeSource, this.isDedicatedServer()), Util.timeSource, Util.ioPool(), new MetricsPersister("server"), this.onMetricsRecordingStopped, (path) -> {
this.executeBlocking(() -> {
this.saveDebugReport(path.resolve("server"));
@@ -2717,40 +2717,40 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2724,40 +2724,40 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
this.willStartRecordingMetrics = false;
}
@@ -382,7 +382,7 @@ index 8e2ed04e813eff98aa08d69392ec9a562d35a1cb..f528b0077599a74b8ac145d071246b87
}
public Path getWorldPath(LevelResource worldSavePath) {
@@ -2799,15 +2799,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
@@ -2806,15 +2806,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
}
public boolean isTimeProfilerRunning() {
@@ -626,7 +626,7 @@ index 9f438b41b61ee1174d8f23bcb7d93380ad932e9c..c3c47857515a7f75d69c718f352d8bae
}
diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java
index a571b1bc64a5f386456a12a812b9115fc47e8f9c..d3f90f05f4d3bd55e9c74fc784982b943d4d7162 100644
index 25e9bb866bb7c07c0a1f32a85441694acbc5ed3b..21b423282cc2c6a65b060dace7f58575a70faac8 100644
--- a/src/main/java/net/minecraft/server/level/ServerLevel.java
+++ b/src/main/java/net/minecraft/server/level/ServerLevel.java
@@ -829,16 +829,16 @@ public class ServerLevel extends Level implements WorldGenLevel {