New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
permissions registering on reload causing thread dump #128
Labels
bug
Something isn't working
Comments
Try the dev branch please |
seems to be working great!
|
Thanks! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Describe the bug
When creating many forms, and when using /forms reload, thread dumps occur as the server cannot keep up with registering both permissions 'use' and 'commands'.
To Reproduce
Expected behaviour
The /forms reload command should reload the plugin, while not causing thread dumps.
Screenshots / Videos
15:07:10 ERROR: Current Thread: Server thread
15:07:10 ERROR: PID: 23 | Suspended: false | Native: false | State: RUNNABLE
15:07:10 ERROR: Stack:
15:07:10 ERROR: java.base@17.0.2/java.lang.StringLatin1.toLowerCase(StringLatin1.java:441)
15:07:10 ERROR: java.base@17.0.2/java.lang.String.toLowerCase(String.java:3388)
15:07:10 ERROR: org.bukkit.plugin.SimplePluginManager.unsubscribeFromPermission(SimplePluginManager.java:869)
15:07:10 ERROR: org.bukkit.permissions.PermissibleBase.clearPermissions(PermissibleBase.java:185)
15:07:10 ERROR: org.bukkit.permissions.PermissibleBase.recalculatePermissions(PermissibleBase.java:165)
15:07:10 ERROR: org.bukkit.craftbukkit.v1_19_R1.entity.CraftHumanEntity.recalculatePermissions(CraftHumanEntity.java:257)
15:07:10 ERROR: org.bukkit.plugin.SimplePluginManager.dirtyPermissibles(SimplePluginManager.java:850)
15:07:10 ERROR: org.bukkit.plugin.SimplePluginManager.calculatePermissionDefault(SimplePluginManager.java:835)
15:07:10 ERROR: org.bukkit.plugin.SimplePluginManager.addPermission(SimplePluginManager.java:796)
15:07:10 ERROR: org.bukkit.plugin.SimplePluginManager.addPermission(SimplePluginManager.java:784)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.spigot.common.handler.SpigotHandler.registerPermission(SpigotHandler.java:117)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.handler.ServerHandler.registerPermission(ServerHandler.java:61)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.interfacing.bedrock.BedrockFormRegistry.load(BedrockFormRegistry.java:53)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.interfacing.bedrock.BedrockFormRegistry.reload(BedrockFormRegistry.java:71)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.reloadable.ReloadableRegistry.reloadAll(ReloadableRegistry.java:46)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.command.defaults.ReloadCommand.lambda$register$0(ReloadCommand.java:26)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.command.defaults.ReloadCommand$$Lambda$9463/0x0000000802a361e8.execute(Unknown Source)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.shaded.cloud.execution.CommandExecutionHandler.executeFuture(CommandExecutionHandler.java:95)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.shaded.cloud.execution.CommandExecutionCoordinator$SimpleCoordinator.coordinateExecution(CommandExecutionCoordinator.java:123)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.shaded.cloud.CommandManager.executeCommand(CommandManager.java:188)
15:07:10 ERROR: CrossplatForms-Spigot.jar//dev.kejona.crossplatforms.shaded.cloud.bukkit.BukkitCommand.execute(BukkitCommand.java:116)
15:07:10 ERROR: org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:155)
15:07:10 ERROR: org.bukkit.craftbukkit.v1_19_R1.CraftServer.dispatchCommand(CraftServer.java:911)
15:07:10 ERROR: org.bukkit.craftbukkit.v1_19_R1.command.BukkitCommandWrapper.run(BukkitCommandWrapper.java:64)
15:07:10 ERROR: com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:264)
15:07:10 ERROR: net.minecraft.commands.Commands.performCommand(Commands.java:305)
15:07:10 ERROR: net.minecraft.commands.Commands.performCommand(Commands.java:289)
15:07:10 ERROR: net.minecraft.server.network.ServerGamePacketListenerImpl.performChatCommand(ServerGamePacketListenerImpl.java:2292)
15:07:10 ERROR: net.minecraft.server.network.ServerGamePacketListenerImpl.lambda$handleChatCommand$20(ServerGamePacketListenerImpl.java:2246)
15:07:10 ERROR: net.minecraft.server.network.PlayerConnection$$Lambda$13500/0x0000000803b2bd90.run(Unknown Source)
15:07:10 ERROR: net.minecraft.util.thread.BlockableEventLoop.lambda$submitAsync$0(BlockableEventLoop.java:59)
15:07:10 ERROR: net.minecraft.util.thread.IAsyncTaskHandler$$Lambda$13501/0x0000000803b2e000.get(Unknown Source)
15:07:10 ERROR: java.base@17.0.2/java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1768)
15:07:10 ERROR: net.minecraft.server.TickTask.run(TickTask.java:18)
15:07:10 ERROR: net.minecraft.util.thread.BlockableEventLoop.doRunTask(BlockableEventLoop.java:153)
15:07:10 ERROR: net.minecraft.util.thread.ReentrantBlockableEventLoop.doRunTask(ReentrantBlockableEventLoop.java:24)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.doRunTask(MinecraftServer.java:1361)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.d(MinecraftServer.java:185)
15:07:10 ERROR: net.minecraft.util.thread.BlockableEventLoop.pollTask(BlockableEventLoop.java:126)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.pollTaskInternal(MinecraftServer.java:1338)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.pollTask(MinecraftServer.java:1331)
15:07:10 ERROR: net.minecraft.util.thread.BlockableEventLoop.runAllTasks(BlockableEventLoop.java:114)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.tickServer(MinecraftServer.java:1465)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1193)
15:07:10 ERROR: net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:305)
15:07:10 ERROR: net.minecraft.server.MinecraftServer$$Lambda$4309/0x00000008014d5618.run(Unknown Source)
15:07:10 ERROR: java.base@17.0.2/java.lang.Thread.run(Thread.java:833)
15:07:10 ERROR: ------------------------------
15:07:10 ERROR: --- DO NOT REPORT THIS TO PAPER - THIS IS NOT A BUG OR A CRASH ---
15:07:10 ERROR: ------------------------------
s
Server Version and Plugins
No response
Geyser Dump
No response
CrossplatForms Version
CForms Version: 1.4.0, Branch: main, Build: 28, Commit: 9b2ad7c
Additional Context
Suggestion:
allow on config setup to decide which permissions need to be registered, instead of them doing so automatically for each form/command.
The text was updated successfully, but these errors were encountered: