The bug
If an exception occurs in any command run by the gameLoopFunction
, the server will crash. As vanilla commands usually do not throw exceptions, this issue will mostly cause problems on custom servers or other modified versions of the game.
Expected behavior
When the player executes the same function from chat, the exception is shown in chat and the server continues running. Something similar should happen for the gameLoopFunction
, e.g. logging the exception when it occurs.
How to reproduce
Create a new function.
Add a command to the function that will throw an exception.
In 17w45a, the execute command will cause a NullPointerException when used inside a function (see MC-121674).
This is just an example, any exception occurring during command execution will work.
(Optional) Run the function from chat. The exception will be shown in chat, but otherwise nothing happens.
Set that function as the
gameLoopFunction
. The server will crash immediately.
Provided by @unknown:
[13:35:50] [Server thread/ERROR]: Couldn't execute command for @: teleport @e[x=-170,y=55,z=-115,dx=0,dy=5,dz=17,type=minecraft:villager] -150 55 -90
com.mojang.brigadier.exceptions.CommandSyntaxException: No entity was found
at com.mojang.brigadier.exceptions.SimpleCommandExceptionType.create(SimpleCommandExceptionType.java:28) ~[minecraft_server.jar:?]
at bp.b(SourceFile:51) ~[minecraft_server.jar:?]
at oq.f(SourceFile:46) ~[minecraft_server.jar:?]
at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:117) ~[minecraft_server.jar:?]
at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:74) ~[minecraft_server.jar:?]
at bl.a(SourceFile:169) [minecraft_server.jar:?]
at aot.a(SourceFile:118) [minecraft_server.jar:?]
at ary.c(SourceFile:248) [minecraft_server.jar:?]
at ary.a(SourceFile:120) [minecraft_server.jar:?]
at ary.b(SourceFile:93) [minecraft_server.jar:?]
at pu.a(SourceFile:641) [minecraft_server.jar:?]
at pu.d(SourceFile:220) [minecraft_server.jar:?]
at net.minecraft.server.MinecraftServer.w(SourceFile:648) [minecraft_server.jar:?]
at pf.w(SourceFile:349) [minecraft_server.jar:?]
at net.minecraft.server.MinecraftServer.v(SourceFile:584) [minecraft_server.jar:?]
at net.minecraft.server.MinecraftServer.run(SourceFile:489) [minecraft_server.jar:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
[13:35:50] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.NullPointerException: null
at oe.a(SourceFile:404) ~[minecraft_server.jar:?]
at oe.o(SourceFile:66) ~[minecraft_server.jar:?]
at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:117) ~[minecraft_server.jar:?]
at bh$b.a(SourceFile:82) ~[minecraft_server.jar:?]
at mm$a.a(SourceFile:187) ~[minecraft_server.jar:?]
at mm.a(SourceFile:104) ~[minecraft_server.jar:?]
at mm.N_(SourceFile:80) ~[minecraft_server.jar:?]
at net.minecraft.server.MinecraftServer.w(SourceFile:678) ~[minecraft_server.jar:?]
at pf.w(SourceFile:349) ~[minecraft_server.jar:?]
at net.minecraft.server.MinecraftServer.v(SourceFile:584) ~[minecraft_server.jar:?]
at net.minecraft.server.MinecraftServer.run(SourceFile:489) [minecraft_server.jar:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_131]
[13:35:50] [Server thread/ERROR]: This crash report has been saved to: D:\Users\Steven\Desktop\Minecraft\Server\.\crash-reports\crash-2017-11-10_13.35.50-server.txt
[13:35:50] [Server thread/INFO]: Stopping server
[13:35:50] [Server thread/INFO]: Saving players
[13:35:50] [Server thread/INFO]: Saving worlds
[13:35:50] [Server thread/INFO]: Saving chunks for level 'medabots_server'/overworld
[13:35:50] [Server thread/INFO]: Saving chunks for level 'medabots_server'/the_nether
[13:35:50] [Server thread/INFO]: Saving chunks for level 'medabots_server'/the_end
[13:35:50] [Server Shutdown Thread/INFO]: Stopping server
[13:35:50] [Server Shutdown Thread/INFO]: Saving players
[13:35:50] [Server Shutdown Thread/INFO]: Saving worlds
[13:35:50] [Server Shutdown Thread/INFO]: Saving chunks for level 'medabots_server'/overworld
[13:35:50] [Server Shutdown Thread/INFO]: Saving chunks for level 'medabots_server'/the_nether
[13:35:50] [Server Shutdown Thread/INFO]: Saving chunks for level 'medabots_server'/the_end
D:\Users\Steven\Desktop\Minecraft\Server>pause
Press any key to continue . . .
Linked issues
is duplicated by 2
Attachments
Comments 0
No comments.