mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-17 23:01:01 +01:00
34e0091024
Take same approach we did for chunks, and only save player if its been X time since last save, instead of doing it all in 1 tick. This is even more helpful considering Player Saving is done sync for File IO.
51 lines
No EOL
2.4 KiB
Diff
51 lines
No EOL
2.4 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Zach Brown <1254957+zachbr@users.noreply.github.com>
|
|
Date: Tue, 20 Dec 2016 23:09:21 -0600
|
|
Subject: [PATCH] Add option to remove invalid statistics
|
|
|
|
|
|
diff --git a/src/main/java/com/destroystokyo/paper/PaperConfig.java b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
index 668b375e1..569a1a9ab 100644
|
|
--- a/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
+++ b/src/main/java/com/destroystokyo/paper/PaperConfig.java
|
|
@@ -0,0 +0,0 @@ public class PaperConfig {
|
|
private static void playerAutoSaveRate() {
|
|
playerAutoSaveRate = getInt("settings.player-auto-save-rate", -1);
|
|
}
|
|
+
|
|
+ public static boolean removeInvalidStatistics = false;
|
|
+ private static void removeInvalidStatistics() {
|
|
+ removeInvalidStatistics = getBoolean("remove-invalid-statistics", false);
|
|
+ }
|
|
}
|
|
diff --git a/src/main/java/net/minecraft/server/ServerStatisticManager.java b/src/main/java/net/minecraft/server/ServerStatisticManager.java
|
|
index 99466dbde..d1bee0257 100644
|
|
--- a/src/main/java/net/minecraft/server/ServerStatisticManager.java
|
|
+++ b/src/main/java/net/minecraft/server/ServerStatisticManager.java
|
|
@@ -0,0 +0,0 @@ public class ServerStatisticManager extends StatisticManager {
|
|
JsonObject jsonobject = jsonelement.getAsJsonObject();
|
|
HashMap hashmap = Maps.newHashMap();
|
|
Iterator iterator = jsonobject.entrySet().iterator();
|
|
+ java.util.List<String> invalidStats = com.google.common.collect.Lists.newArrayList(); // Paper
|
|
|
|
while (iterator.hasNext()) {
|
|
Entry entry = (Entry) iterator.next();
|
|
@@ -0,0 +0,0 @@ public class ServerStatisticManager extends StatisticManager {
|
|
hashmap.put(statistic, statisticwrapper);
|
|
} else {
|
|
ServerStatisticManager.b.warn("Invalid statistic in {}: Don\'t know what {} is", new Object[] { this.d, entry.getKey()});
|
|
+ if (com.destroystokyo.paper.PaperConfig.removeInvalidStatistics) invalidStats.add((String) entry.getKey()); // Paper
|
|
}
|
|
}
|
|
|
|
+ // Paper start - Remove invalid statistics
|
|
+ for (String invalid : invalidStats) {
|
|
+ jsonobject.remove(invalid);
|
|
+ ServerStatisticManager.b.info("Removing invalid statistic: " + invalid);
|
|
+ }
|
|
+ // Paper end
|
|
+
|
|
return hashmap;
|
|
}
|
|
}
|
|
--
|