WorldEdit

WorldEdit

42M Downloads

Error when attempting to undo

LadyCailinBot opened this issue ยท 4 comments

commented

WORLDEDIT-3735 - Reported by dimwit105

Internal server error running on CraftBukkit version git-Spigot-68acb93-65bb2d0 (MC: 1.13.1) (Implementing API version 1.13.1-R0.1-SNAPSHOT) with worldedit build #3866.

Current plugins
CoreProtect, WorldEdit, PluginConstructorAPI, Vault, ProtocolLib, ChatControl, LiteBans

NB: CoreProtect config has been edited to disable worldedit logging.

//undo command fails to undo, instead producing a server error.

[12:12:00] [Server thread/INFO]: blaxout1213 issued server command: //set stone
[12:12:07] [Server thread/INFO]: blaxout1213 issued server command: //undo
[12:12:07] [Server thread/ERROR]: [WorldEdit] An unexpected error while handling a WorldEdit command
java.lang.reflect.InvocationTargetException: null
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
	at com.sk89q.worldedit.util.command.parametric.ParametricCallable.call(ParametricCallable.java:243) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.util.command.SimpleDispatcher.call(SimpleDispatcher.java:125) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extension.platform.CommandManager.handleCommand(CommandManager.java:275) ~[worldedit-bukkit-7.0.0.jar:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:564) ~[?:?]
	at com.sk89q.worldedit.util.eventbus.MethodEventHandler.dispatch(MethodEventHandler.java:58) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.util.eventbus.EventHandler.handleEvent(EventHandler.java:73) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.util.eventbus.EventBus.dispatch(EventBus.java:187) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.util.eventbus.EventBus.post(EventBus.java:173) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.bukkit.WorldEditPlugin.onCommand(WorldEditPlugin.java:234) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.bukkit.util.DynamicPluginCommand.execute(DynamicPluginCommand.java:54) ~[worldedit-bukkit-7.0.0.jar:?]
	at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at org.bukkit.craftbukkit.v1_13_R2.CraftServer.dispatchCommand(CraftServer.java:696) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.PlayerConnection.handleCommand(PlayerConnection.java:1644) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.PlayerConnection.a(PlayerConnection.java:1479) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.PacketPlayInChat.a(PacketPlayInChat.java:45) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.PacketPlayInChat.a(PacketPlayInChat.java:1) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.PlayerConnectionUtils.a(SourceFile:10) ~[spigot.jar:git-Spigot-68acb93-65bb2d0]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:514) [?:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
	at net.minecraft.server.v1_13_R2.SystemUtils.a(SourceFile:199) [spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.MinecraftServer.b(MinecraftServer.java:900) [spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.DedicatedServer.b(DedicatedServer.java:417) [spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.MinecraftServer.a(MinecraftServer.java:835) [spigot.jar:git-Spigot-68acb93-65bb2d0]
	at net.minecraft.server.v1_13_R2.MinecraftServer.run(MinecraftServer.java:733) [spigot.jar:git-Spigot-68acb93-65bb2d0]
	at java.lang.Thread.run(Thread.java:844) [?:?]
Caused by: java.lang.IncompatibleClassChangeError: Inconsistent constant pool data in classfile for class com/sk89q/worldedit/world/block/BlockStateHolder. Method lambda$getAsString$0(Ljava/util/Map$Entry;)Ljava/lang/String; at index 70 is CONSTANT_MethodRef and should be CONSTANT_InterfaceMethodRef
	at com.sk89q.worldedit.world.block.BlockStateHolder.getAsString(BlockStateHolder.java:96) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.bukkit.BukkitAdapter.adapt(BukkitAdapter.java:358) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.bukkit.adapter.impl.Spigot_v1_13_R2.setBlock(Spigot_v1_13_R2.java:256) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.bukkit.BukkitWorld.setBlock(BukkitWorld.java:422) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.world.FastModeExtent.setBlock(FastModeExtent.java:92) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.AbstractDelegateExtent.setBlock(AbstractDelegateExtent.java:80) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.world.SurvivalModeExtent.setBlock(SurvivalModeExtent.java:87) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.AbstractDelegateExtent.setBlock(AbstractDelegateExtent.java:80) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.world.BlockQuirkExtent.setBlock(BlockQuirkExtent.java:63) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.AbstractDelegateExtent.setBlock(AbstractDelegateExtent.java:80) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.world.ChunkLoadingExtent.setBlock(ChunkLoadingExtent.java:66) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.AbstractDelegateExtent.setBlock(AbstractDelegateExtent.java:80) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.AbstractDelegateExtent.setBlock(AbstractDelegateExtent.java:80) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.validation.DataValidatorExtent.setBlock(DataValidatorExtent.java:64) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.AbstractDelegateExtent.setBlock(AbstractDelegateExtent.java:80) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.extent.inventory.BlockBagExtent.setBlock(BlockBagExtent.java:112) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.function.operation.BlockMapEntryPlacer.resume(BlockMapEntryPlacer.java:60) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.function.operation.OperationQueue.resume(OperationQueue.java:89) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.function.operation.OperationQueue.resume(OperationQueue.java:89) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.function.operation.Operations.completeBlindly(Operations.java:74) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.EditSession.flushQueue(EditSession.java:588) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.EditSession.undo(EditSession.java:540) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.LocalSession.undo(LocalSession.java:231) ~[worldedit-bukkit-7.0.0.jar:?]
	at com.sk89q.worldedit.command.HistoryCommands.undo(HistoryCommands.java:63) ~[worldedit-bukkit-7.0.0.jar:?]
	... 32 more
commented

Comment by dimwit105

@me4502 CoreProtect, WorldEdit, PluginConstructorAPI, Vault, ProtocolLib, ChatControl, LiteBans

commented

Comment by me4502

So from googling, it appears it's partially a bug in Java. It's caused by things doing ASM modifications poorly. I've updated the plugins used in the build process to hopefully fix it, so give the latest a try. Otherwise, one of the plugins you are using (Or Spigot itself) is making bad ASM modifications that are triggering a bug in Java.

commented

Comment by dimwit105

@me4502 Build #3867 fixed it! Undo works properly, along with other commands that failed previously.

Many thanks!

commented

Comment by me4502

You have another plugin hooking into WorldEdit and breaking it.
IncompatibleClassChangeError Usually anything with 'Error' in it rather than 'Exception' means it's caused by something hooking. I haven't personally seen this one before though so I don't know which plugin it'd be. What's your plugin list?