AdvancedPlugins / Chat

The Best Chat Plugin for Spigot Servers, including AI chat monitoring, endless formatting capabilities, custom commands and way more
4 stars 4 forks source link

Server Crash upon Circular plugin loading from plugins AdvancedChat #146

Closed PythonChicken123 closed 1 month ago

PythonChicken123 commented 1 month ago

Describe the bug

Description

I am encountering a circular plugin loading error when starting my Minecraft server (PurpurMC). The error message indicates a loop involving AdvancedChat, PremiumVanish, dynmap, Vault, and CMI. As the server tells me: "Please report this to the plugin authors of the first plugin of each loop or join the PaperMC Discord server for further help.", I came here to report this issue with many essentials to help you resolve this critical issue.

Server Version: Purpur 1.21 [Experimental] Server JAR: https://api.purpurmc.org/v2/purpur/1.21/2269/download Circular load order: AdvancedChat -> PremiumVanish -> dynmap -> Vault -> CMI -> AdvancedChat Plugin Versions:

Server Startup:

@Echo off
title LIFESTEAL Server
"C:\Program Files\Java\jdk-22\bin\java" -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSIncrementalPacing -XX:+AggressiveOpts -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX:+PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -XX:+IgnoreUnrecognizedVMOptions -XX:+AlwaysActAsServerClassMachine -XX:+UseNUMA -XX:NmethodSweepActivity=1 -XX:ReservedCodeCacheSize=512m -XX:NonNMethodCodeHeapSize=128m -XX:ProfiledCodeHeapSize=192m -XX:NonProfiledCodeHeapSize=192m -XX:-DontCompileHugeMethods -XX:MaxNodeLimit=240000 -XX:NodeLimitFudgeFactor=8000 -XX:+UseVectorCmov -XX:+PerfDisableSharedMem -XX:+UseFastUnorderedTimeStamps -XX:+UseCriticalJavaThreadPriority -XX:ThreadPriorityPolicy=1 -XX:AllocatePrefetchStyle=3 -XX:+OptimizeStringConcat -XX:+UseStringDeduplication -XX:+EliminateAllocationArray -XX:InitialCodeCacheSize=512m -XX:SoftRefLRUPolicyMSPerMB=10000 -XX:ParallelGCThreads=7 -XX:ConcGCThreads=2 -XX:CICompilerCount=2 -Daikars.new.flags=true -Dusing.aikars.flags=true -Dfile.encoding=UTF-8 --add-modules=jdk.incubator.vector -Djdk.instrument.traceUsage -jar server.jar nogui
pause

Error

The Error indicates a circular plugin loading error:

[19:28:23] [Server thread/ERROR]: [SimpleProviderStorage] Circular plugin loading detected!
[19:28:23] [Server thread/ERROR]: [SimpleProviderStorage] Circular load order:
[19:28:23] [Server thread/ERROR]: [SimpleProviderStorage]   AdvancedChat -> PremiumVanish -> dynmap -> Vault -> CMI -> AdvancedChat
[19:28:23] [Server thread/ERROR]: [SimpleProviderStorage] Please report this to the plugin authors of the first plugin of each loop or join the PaperMC Discord server for further help.
[19:28:23] [Server thread/ERROR]: [SimpleProviderStorage] If you would like to still load these plugins, acknowledging that there may be unexpected plugin loading issues, run the server with -Dpaper.useLegacyPluginLoading=true
[19:28:23] [Server thread/ERROR]: Encountered an unexpected exception
java.lang.IllegalStateException: Circular plugin loading from plugins AdvancedChat
    at io.papermc.paper.plugin.storage.SimpleProviderStorage.handleCycle(SimpleProviderStorage.java:78) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:42) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:40) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:549) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:324) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1225) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:333) ~[purpur-1.21.jar:1.21-2265-8f0f20d]
    at java.base/java.lang.Thread.run(Thread.java:1570) ~[?:?]
[19:28:24] [Server thread/ERROR]: This crash report has been saved to: C:\Users\wave6\Documents\chicken2\EchoRuins\crash-reports\crash-2024-07-19_19.28.24-server.txt

Crash Report crash-2024-07-19_19.28.24-server.txt

A detailed crash report, which might help you to resolve the issue, is in: https://mcpaste.io/d5f7a16559a3e145

Imcompatibility between AdvancedChat and AdvancedEnchantments upon starting the server with -Dpaper.useLegacyPluginLoading=true

[22:07:15 ERROR]: Error occurred while enabling AdvancedEnchantments v9.9.15 (Is it up to date?)
java.lang.BootstrapMethodError: bootstrap method initialization exception
        at java.base/java.lang.invoke.BootstrapMethodInvoker.invoke(BootstrapMethodInvoker.java:188) ~[?:?]
        at java.base/java.lang.invoke.CallSite.makeSite(CallSite.java:316) ~[?:?]
        at java.base/java.lang.invoke.MethodHandleNatives.linkCallSiteImpl(MethodHandleNatives.java:275) ~[?:?]
        at java.base/java.lang.invoke.MethodHandleNatives.linkCallSite(MethodHandleNatives.java:265) ~[?:?]
        at AdvancedEnchantments-9.9.15.jar/net.advancedplugins.ae.Core.onEnable(Core.java:157) ~[AdvancedEnchantments-9.9.15.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:288) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.enablePlugin(PaperPluginInstanceManager.java:202) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.enablePlugin(PaperPluginManagerImpl.java:109) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:520) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.CraftServer.enablePlugin(CraftServer.java:652) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:601) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:756) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:518) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:361) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1225) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:333) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at java.base/java.lang.Thread.run(Thread.java:1570) ~[?:?]
Caused by: java.lang.invoke.StringConcatException: Mismatched number of concat arguments: recipe wants 0 arguments, but signature provides 2
        at java.base/java.lang.invoke.StringConcatFactory.argumentMismatch(StringConcatFactory.java:441) ~[?:?]
        at java.base/java.lang.invoke.StringConcatFactory.parseRecipe(StringConcatFactory.java:424) ~[?:?]
        at java.base/java.lang.invoke.StringConcatFactory.makeConcatWithConstants(StringConcatFactory.java:348) ~[?:?]
        at java.base/java.lang.invoke.BootstrapMethodInvoker.invoke(BootstrapMethodInvoker.java:102) ~[?:?]
        ... 16 more
[22:07:15 INFO]: [AdvancedEnchantments] Disabling AdvancedEnchantments v9.9.15
[22:07:15 ERROR]: Error occurred while disabling AdvancedEnchantments v9.9.15
java.lang.NullPointerException: Cannot invoke "net.advancedplugins.ae.impl.effects.effects.EffectsHandler.unload()" because "net.advancedplugins.ae.Core.M" is null
        at AdvancedEnchantments-9.9.15.jar/net.advancedplugins.ae.Core.onDisable(Core.java:558) ~[AdvancedEnchantments-9.9.15.jar:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:291) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.disablePlugin(PaperPluginInstanceManager.java:237) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.disablePlugin(PaperPluginManagerImpl.java:114) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:550) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
        at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.enablePlugin(PaperPluginInstanceManager.java:206) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.enablePlugin(PaperPluginManagerImpl.java:109) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:520) ~[paper-mojangapi-1.21-R0.1-SNAPSHOT.jar:?]
        at org.bukkit.craftbukkit.CraftServer.enablePlugin(CraftServer.java:652) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:601) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:756) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:518) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:361) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1225) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:333) ~[purpur-1.21.jar:1.21-2269-65d3665]
        at java.base/java.lang.Thread.run(Thread.java:1570) ~[?:?]

Spark Profiler of server started with -Dpaper.useLegacyPluginLoading=true : https://spark.lucko.me/2yhzruBLKT The entire server log starting the server with -Dpaper.useLegacyPluginLoading=true could be found at https://mcpaste.io/3a899c6945c70a94

Possible Solutions:

Request:

Final Words

Please fix this error as soon as possible, this is urgent since I require a chat plugin and AdvancedChat is the best plugin out there. If I wanted to keep the plugin while using the Legacy Plugin Loading Solution, I have to leave some plugins: PremiumVanish (to vanish on players and view the server without being) , CMI (Server Core), Vault (Economy), AdvancedEnchantments (More Enchantments and more) and finally dynmap (View the world). Without these plugins, it is impossible for me to start a amazing server. Again, please fix this error as soon as possible: I am able to provide more information for you to resolve this problem. Thanks for taking your time to review this bug.

How to reproduce

Add the latest plugins in to any purpur 1.21 minecraft server without starting the server with -Dpaper.useLegacyPluginLoading=true : "AdvancedChat, PremiumVanish, dynmap, Vault, and CMI" and watch the error occur upon the server finished remapping plugins and cache.

Screenshots / Videos

The error upon starting the server with the dependencies: "PremiumVanish, dynmap, Vault, and CMI"

AdvancedChatBug

Server Log

https://mcpaste.io/3f5fb00eb1cfd7c5

ThomasWega commented 1 month ago

Should be fixed in the next version hopefully. Will keep this upon until new AChat version with this fix comes out, then let me know if the issue was fixed please.

PythonChicken123 commented 1 month ago

Updated to AdvancedChat 1.3.6. Issue does not occur anymore.

ThomasWega commented 1 month ago

Thanks for letting me know! :) <3