Mindgamesnl/OpenAudioMc

IllegalStateException on plugin disable / server shutdown.

Closed this issue · 0 comments

Describe the bug
When server is shutting down, there is an IllegalStateException thrown which is caused by OpenAudioMC.

Desktop (please complete the following information):

  • Plugin Version: 6.5.5
  • Server Version: Purpur-1047 (MC: 1.16.5)
  • Web client used: [client.openaudiomc.net (default)]

Stack trace

[12:10:08 INFO]: Stopping server
[12:10:08 INFO]: [OpenAudioMc] Disabling OpenAudioMc v6.5.5
[12:10:08 INFO]: [OpenAudioMc] Shutting down
[12:10:09 INFO]: [OpenAudioMc] An async task was requested but server is already stopping, so I'm doing it now. Original requester was from executeAsync in RestRequest.java
[12:10:09 INFO]: [OpenAudioMc] An async task was requested but server is already stopping, so I'm doing it now. Original requester was from executeAsync in RestRequest.java
[12:10:09 INFO]: [OpenAudioMc] An async task was requested but server is already stopping, so I'm doing it now. Original requester was from executeAsync in RestRequest.java
[12:10:09 INFO]: [OpenAudioMc] Stopped OpenAudioMc. Goodbye.
[12:10:10 INFO]: Saving players
[12:10:10 ERROR]: [com.craftmend.thirdparty.iosocket.thread.EventThread] Task threw exception
java.lang.IllegalStateException: zip file closed
        at java.util.zip.ZipFile.ensureOpen(ZipFile.java:829) ~[?:?]
        at java.util.zip.ZipFile.getEntry(ZipFile.java:328) ~[?:?]
        at java.util.jar.JarFile.getEntry(JarFile.java:519) ~[?:?]
        at java.util.jar.JarFile.getJarEntry(JarFile.java:474) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:167) ~[patched_1.16.5.jar:git-Purpur-1171]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:586) ~[?:?]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:119) ~[patched_1.16.5.jar:git-Purpur-1171]
        at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:114) ~[patched_1.16.5.jar:git-Purpur-1171]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:519) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Transport.close(Transport.java:82) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.onClose(Socket.java:850) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.onClose(Socket.java:825) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.access$800(Socket.java:36) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket$20$1.run(Socket.java:768) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket$20$4.call(Socket.java:800) ~[?:?]
        at com.craftmend.thirdparty.iosocket.emitter.Emitter$OnceListener.call(Emitter.java:164) ~[?:?]
        at com.craftmend.thirdparty.iosocket.emitter.Emitter.emit(Emitter.java:117) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.onDrain(Socket.java:648) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.access$1100(Socket.java:36) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.Socket$6.call(Socket.java:330) ~[?:?]
        at com.craftmend.thirdparty.iosocket.emitter.Emitter.emit(Emitter.java:117) ~[?:?]
        at com.craftmend.thirdparty.iosocket.engineio.client.transports.WebSocket$2$1.run(WebSocket.java:127) ~[?:?]
        at com.craftmend.thirdparty.iosocket.thread.EventThread$2.run(EventThread.java:80) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) [?:?]
        at java.lang.Thread.run(Thread.java:831) [?:?]
[12:10:10 WARN]: Exception in thread "EventThread" java.lang.IllegalStateException: zip file closed
[12:10:10 WARN]:        at java.base/java.util.zip.ZipFile.ensureOpen(ZipFile.java:829)
[12:10:10 WARN]:        at java.base/java.util.zip.ZipFile.getEntry(ZipFile.java:328)
[12:10:10 WARN]:        at java.base/java.util.jar.JarFile.getEntry(JarFile.java:519)
[12:10:10 WARN]:        at java.base/java.util.jar.JarFile.getJarEntry(JarFile.java:474)
[12:10:10 WARN]:        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:167)
[12:10:10 WARN]:        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:586)
[12:10:10 WARN]:        at org.bukkit.plugin.java.PluginClassLoader.loadClass0(PluginClassLoader.java:119)
[12:10:10 WARN]:        at org.bukkit.plugin.java.PluginClassLoader.loadClass(PluginClassLoader.java:114)
[12:10:10 WARN]:        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Transport.close(Transport.java:82)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.onClose(Socket.java:850)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.onClose(Socket.java:825)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.access$800(Socket.java:36)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket$20$1.run(Socket.java:768)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket$20$4.call(Socket.java:800)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.emitter.Emitter$OnceListener.call(Emitter.java:164)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.emitter.Emitter.emit(Emitter.java:117)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.onDrain(Socket.java:648)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket.access$1100(Socket.java:36)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.Socket$6.call(Socket.java:330)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.emitter.Emitter.emit(Emitter.java:117)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.engineio.client.transports.WebSocket$2$1.run(WebSocket.java:127)
[12:10:10 WARN]:        at com.craftmend.thirdparty.iosocket.thread.EventThread$2.run(EventThread.java:80)
[12:10:10 WARN]:        at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130)
[12:10:10 WARN]:        at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630)
[12:10:10 WARN]:        at java.base/java.lang.Thread.run(Thread.java:831)
[12:10:10 INFO]: Saving worlds
[12:10:10 INFO]: Saving chunks for level 'ServerLevel[world]'/minecraft:overworld
[12:10:10 INFO]: ThreadedAnvilChunkStorage (world): All chunks are saved
[12:10:10 INFO]: Saving chunks for level 'ServerLevel[world_the_end]'/minecraft:the_end
[12:10:10 INFO]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved
[12:10:10 INFO]: ThreadedAnvilChunkStorage (world): All chunks are saved
[12:10:10 INFO]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved
[12:10:10 INFO]: Saving usercache.json
[12:10:10 INFO]: Flushing Chunk IO
[12:10:10 INFO]: Closing Thread Pool
[12:10:10 INFO]: Closing Server

https://pastebin.com/e7r4ztLM