LuckPerms

LuckPerms

41.4k Downloads

Running luckperms user via /execute can shutdown a Spigot server

JorelAli opened this issue ยท 4 comments

commented

Description

Typing /execute run luckperms user as an operator in-game on a Spigot server can cause the server to instantly shutdown.

Reproduction Steps

  • Use the latest version of Spigot for Minecraft 1.19 (built using Spigot's BuildTools and java -jar BuildTools.jar)
  • Create a completely fresh new server (i.e. no other plugins)
  • Download the latest version of LuckPerms and add it to the plugins/ folder
  • Join the server in-game
  • In the console, op the player using /op <playername>
  • As the player, type /execute run luckperms user
  • Insert a space (so you get /execute run luckperms user )

Expected Behaviour

  • LuckPerms shouldn't crash the server
  • LuckPerms should be compatible with /execute, and it should be possible to add permissions to a user via the /execute command

Server Details

This server is running CraftBukkit version 3546-Spigot-475f600-163e35c (MC: 1.19) (Implementing API version 1.19-R0.1-SNAPSHOT)

LuckPerms Version

5.4.30

Logs and Configs

(The logger crashes when the error occurs, so there are no meaningful logs that can be provided here!)

Extra Details

I was able to reproduce this in an old version of Paper (paper-1.19-7), but wasn't able to reproduce this on the latest version of paper (paper-1.19-58)

commented

Since I'm rather curious, I tested this on my not yet released server. For me, it didn't crash, but it did lag like mad for a minute, throwing the errors you noted to not be useful, while I think they are useful.
Gist: https://gist.github.com/ZeromaniacMc/69fe20827a4e0c4babb1655bb6445353
The error mentions Brigadier. My guess is that for some reason it doesn't like that^^.

commented

Perhaps I have some Java flags that makes stack calls more susceptible to crashing?

commented

Possible yours gets choked faster. If you're interested, I use this in my ptero startup flags:
java -Xms12288M -Xmx12288M -Xmns$((12288/4))M -Xmnx$((12288*2/5))M --add-modules=jdk.incubator.vector -Xquickstart -Xgcpolicy:gencon -Xtune:virtualized -Xdisableexplicitgc -Dterminal.ansi=true -jar server.jar
Also note I use purpur, not paper and not spigot.

commented

Should be fixed in the latest dev builds.