Jump to content

Fehler & Abstürze nach Server-Upgrade von Spigot 1.15.2 auf Paper 1.18.1


Rappi789
 Share

Recommended Posts

Hallo liebe Community,

ich habe mit ein paar Freunden einen kleinen MC-Server laufen.
Vor kurzem haben wir beschlossen von 1.15.2 auf 1.18.1 Upzudaten.

Bisher wurde der Server bei DeinServerHost mit 3GB RAM mit "CraftBukkit version git-Spigot-800b93f-8160e29" betrieben und lief auch problemlos.
Der Versuch die Welt mit der neuesten Spigot 1.18.1 Version zu starten ging leider schief. Dem Server ging während dem Starten immer der Arbeitsspeicher aus und lief in einer Endlosschleife. Nachdem nicht einmal das Starten eines komplett neuen Servers mit einer neuen Welt möglich war bin ich von Spigot auf Paper umgestiegen.

Mit "Paper version git-Paper-71" hat das hat eigentlich auch funktioniert. Die Welt wurde problemlos gestartet und lief auf dem ersten Blick auch stabil. Wir haben auf dem Server übrigends bis auf AutoSaveWorld keinen Plugins oder sonstiges installiert.

Einige Tage darauf ging dem Server jedoch immer wieder der Speicher aus und im Log traten auch einige Warnungen auf.

[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/misc/iron_ingot' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/misc/gold_ingot' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/misc/gold_ingot_from_blasting' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/misc/iron_ingot_from_blasting' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/building_blocks/mossy_stone_bricks' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/decorations/slime_block' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/misc/coal_from_blasting' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/misc/coal_from_smelting' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/redstone/redstone_from_smelting' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/WARN]: Ignored advancement 'minecraft:recipes/redstone/redstone_from_blasting' in progress file ./world/advancements/dad81151-c15e-4f8e-98ab-1a44e020b864.json - it doesn't exist anymore?
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:gold_ingot removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:coal_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:mossy_stone_bricks removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:redstone_from_smelting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:gold_ingot_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:iron_ingot removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:iron_ingot_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:coal_from_smelting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:redstone_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:gold_ingot removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:coal_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:redstone_from_smelting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:gold_ingot_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:coal_from_smelting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:redstone_from_blasting removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:iron_ingot removed now.
[10:01:30] [Server thread/ERROR]: Tried to load unrecognized recipe: minecraft:iron_ingot_from_blasting removed now.

 

Vermehrt traten dann noch weitere Fehler auf:

[10:51:16] [Server thread/WARN]: UUID of added entity already exists: EntityPig['Pig'/304, uuid='db9a5ea0-7419-4224-b36a-32a2ee0699a6', l='ServerLevel[world]', x=1652.50, y=74.00, z=-1010.04, cpos=[103, -64], tl=6234, v=false]
[10:52:12] [Server thread/ERROR]: No key placement in MapLike[{config:{},name:"minecraft:normal_tree"}]; No key feature in MapLike[{config:{},name:"minecraft:normal_tree"}]
[10:52:12] [Server thread/ERROR]: Exception loading structure piece with id minecraft:jigsaw
java.lang.IllegalStateException: Invalid pool element found
	at net.minecraft.world.level.levelgen.structure.PoolElementStructurePiece.lambda$new$0(PoolElementStructurePiece.java:54) ~[?:?]
	at java.util.Optional.orElseThrow(Optional.java:403) ~[?:?]
	at net.minecraft.world.level.levelgen.structure.PoolElementStructurePiece.lambda$new$0(PoolElementStructurePiece.java:54) ~[?:?]
	at net.minecraft.world.level.levelgen.structure.pieces.PiecesContainer.load(PiecesContainer.java:74) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.world.level.levelgen.feature.StructureFeature.loadStaticStart(StructureFeature.java:129) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.world.level.chunk.storage.ChunkSerializer.unpackStructureStart(ChunkSerializer.java:790) ~[?:?]
	at net.minecraft.world.level.chunk.storage.ChunkSerializer.loadChunk(ChunkSerializer.java:363) ~[?:?]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.executeTask(ChunkLoadTask.java:106) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.run(ChunkLoadTask.java:38) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollNextChunkTask(ChunkTaskManager.java:233) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.level.ServerChunkCache$MainThreadExecutor.pollTask(ServerChunkCache.java:1255) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.pollTask(ServerChunkCache.java:831) ~[?:?]
	at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1401) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1384) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[?:?]
	at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1362) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1268) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.1.jar:git-Paper-71]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]

Und Chunk Fehler:

[10:54:16] [Server thread/ERROR]: Could not apply datafixers for chunk task: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (217,-151), hashcode:1599822852, priority: -1
java.lang.ArrayIndexOutOfBoundsException: null
[10:54:16] [Server thread/ERROR]: Chunk file at [217, -151] is in the wrong location; relocating. (Expected [217, -151], got [0, 0])
[10:54:16] [Server thread/ERROR]: Could not de-serialize chunk data for task: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (217,-151), hashcode:1599822852, priority: -1
java.lang.NullPointerException: null
[10:54:16] [Server thread/ERROR]: Failed to execute chunk load task: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (217,-151), hashcode:1599822852, priority: -1
java.lang.IllegalStateException: Expected this task to be scheduled, but another was! Other: null, current: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (217,-151), hashcode:1599822852, priority: -1
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.lambda$complete$1(ChunkLoadTask.java:124) ~[paper-1.18.1.jar:git-Paper-71]
	at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916) ~[?:?]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.complete(ChunkLoadTask.java:122) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.executeTask(ChunkLoadTask.java:110) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.run(ChunkLoadTask.java:38) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollNextChunkTask(ChunkTaskManager.java:233) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.level.ServerChunkCache$MainThreadExecutor.pollTask(ServerChunkCache.java:1255) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.pollTask(ServerChunkCache.java:831) ~[?:?]
	at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1401) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1384) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[?:?]
	at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1362) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1268) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.1.jar:git-Paper-71]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]
[10:54:16] [Server thread/ERROR]: Could not apply datafixers for chunk task: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (218,-151), hashcode:1071092052, priority: -1
java.lang.ArrayIndexOutOfBoundsException: null
[10:54:16] [Server thread/ERROR]: Chunk file at [218, -151] is in the wrong location; relocating. (Expected [218, -151], got [0, 0])
[10:54:16] [Server thread/ERROR]: Could not de-serialize chunk data for task: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (218,-151), hashcode:1071092052, priority: -1
java.lang.NullPointerException: null
[10:54:16] [Server thread/ERROR]: Failed to execute chunk load task: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (218,-151), hashcode:1071092052, priority: -1
java.lang.IllegalStateException: Expected this task to be scheduled, but another was! Other: null, current: Chunk task: class:com.destroystokyo.paper.io.chunk.ChunkLoadTask, for world 'world', (218,-151), hashcode:1071092052, priority: -1
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.lambda$complete$1(ChunkLoadTask.java:124) ~[paper-1.18.1.jar:git-Paper-71]
	at java.util.concurrent.ConcurrentHashMap.compute(ConcurrentHashMap.java:1916) ~[?:?]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.complete(ChunkLoadTask.java:122) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.executeTask(ChunkLoadTask.java:110) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkLoadTask.run(ChunkLoadTask.java:38) ~[paper-1.18.1.jar:git-Paper-71]
	at com.destroystokyo.paper.io.chunk.ChunkTaskManager.pollNextChunkTask(ChunkTaskManager.java:233) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.level.ServerChunkCache$MainThreadExecutor.pollTask(ServerChunkCache.java:1255) ~[?:?]
	at net.minecraft.server.level.ServerChunkCache.pollTask(ServerChunkCache.java:831) ~[?:?]
	at net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1401) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1384) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.util.thread.BlockableEventLoop.managedBlock(BlockableEventLoop.java:132) ~[?:?]
	at net.minecraft.server.MinecraftServer.waitUntilNextTick(MinecraftServer.java:1362) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1268) ~[paper-1.18.1.jar:git-Paper-71]
	at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:317) ~[paper-1.18.1.jar:git-Paper-71]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]

 

Ist hier irgendetwas inkompatibel?
Könnt ihr uns helfen die Fehler zu analysieren?

Im Anhang findet ihr auch 2 Logs. In 2021-12-22-console.log sieht man zum Schluss wie dem Server der Speicher aus geht und dann einfach neustartet.

Wir sind jeglicher Unterstützung echt dankbar!
Rappi

2021-12-19-4.log

Edited by Rappi789
Link to comment
Share on other sites

Sieht aus, als würde der Server die Chunks von der 1.15 zur 1.18 konvertieren und dabei halt an die RAM Begrenzung stoßen

Die 1.18 verändert komplett die Weltengenerierung - neue Höhe/Tiefe, neue Biome etc - dann noch der Wechsel von Spigot zu Paper

Es würde sich da eher anbieten, mit einer neuen Welt zu starten

 

Von der 1.15 Welt kannst du mit Worldedit schematics von den wichtigsten Bauwerken erstellen und die dann in die 1.18 importieren

https://www.spigotmc.org/resources/fast-async-worldedit.13932/

 

Bzw. nutze MultiverseCore

https://dev.bukkit.org/projects/multiverse-core

Erstelle einen 1.18 Server mit neuer Welt - die 1.15 Welt ins Server Verzeichnis kopieren und dann diese Welt mit

/mv import WELTNAME normal

importieren. Dann kannst du dich auf diesen Server zwischen den 2 Welten hin und her teleportieren

Mit Worldedit kannst du dann so nach und nach die Sachen von der 1.15 Map zur 1.18 Map kopieren

 

 

 

Link to comment
Share on other sites

Hi,

das war auch eine der Vermutungen die ich hatte, dass jedes einzelne Chunk erst durch den Spieler konvertiert werden muss.

Natürlich habe ich weiter getestet und nun die neueste Paper-1.18.1-101.jar installiert. Seitdem habe ich keinen einzigen Fehler oder Warnung mehr gehabt.
Lag es möglicherweise doch nur an einem Bug in der Version paper-71?!?

Aufgefallen is mir außerdem, dass selbst bei einer komplett neuen Welt der Server manchmal Sprünge von 400-800MB Speicher benötigt, aber anschließend nicht mehr freigibt.
Gibt es eine Möglichkeit den Speicher oder wenn der RAM allgemein hoch ausgelastet wird wieder freizugeben? Wenn der Server nämlich bei 95% Speicherauslastung liegt und es kommt so ein hoher Sprung chrashed der Server daraufhin.
Oder gibt es ein Script das den Server automatisch neustartet, wenn der RAM zu angenommen 90% belegt ist um den Speicher wieder freizugeben?

Danke!

Link to comment
Share on other sites

Crash-Reports sind sowohl bei den am Anfang beschriebenen Errors oder wenn einfach der Speicher zu klein wird keine erstellt worden.
Der Server startet dann immer mit

[Pterodactyl Daemon]: ---------- Detected server process in a crashed state! ----------
[Pterodactyl Daemon]: Exit code: 137
[Pterodactyl Daemon]: Out of memory: true

neu. (siehe am Ende von 2021-12-22-console.log)

Link to comment
Share on other sites

seitdem ich die Paper-1.18.1-101.jar am Laufen habe gab es keinen einzigen Fehler mehr bei der alten Welt.

Getestet habe ich eben auch eine neue Welt erstellt und da kam es auch zu so einem Absturz:
Ich war 15000 Blöcke geflogen und habe neue Chunks generieren lassen. Dabei kommt es zufällig zu 400-800MB großen Speicher-Anforderungs-Sprüngen. Ist der Speicher nun ca. zu 90% ausgelastet und es kommt zu so einem großen Sprung, schaltet sich der Server einfach aus und macht einen Neustart...
Das hat mit der alten Welt also nichts zu tun.

Edited by Rappi789
Link to comment
Share on other sites

genau, derzeit hoffe ich dass es nur Bugs in Paper waren.

Wenn ich nocheinmal zur Frage zurück kommen darf:
Gibt es ein Script oder ähnliches das den Server automatisch neustartet, wenn xx% RAM belegt sind oder das den Speicher automatisch wieder freigibt?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...
B
B