PurpurMC / Purpur

Purpur is a drop-in replacement for Paper servers designed for configurability, and new fun and exciting gameplay features.
https://purpurmc.org
MIT License
2.05k stars 362 forks source link

Circular plugin loading Server Crash from plugin AdvancedChat #1561

Closed PythonChicken123 closed 4 months ago

PythonChicken123 commented 4 months ago

Spark link

Impossible/Unable to use Spark profilings at server crash

Stack trace

---- Minecraft Crash Report ----
// Who sticked up the TNT?
// 
// DO NOT REPORT THIS TO PAPER! REPORT TO PURPUR INSTEAD!
// 

Time: 2024-07-19 20:08:28
Description: Exception in server tick loop

java.lang.IllegalStateException: Circular plugin loading from plugins AdvancedChat
    at io.papermc.paper.plugin.storage.SimpleProviderStorage.handleCycle(SimpleProviderStorage.java:78)
    at io.papermc.paper.plugin.storage.SimpleProviderStorage.enter(SimpleProviderStorage.java:42)
    at io.papermc.paper.plugin.entrypoint.LaunchEntryPointHandler.enter(LaunchEntryPointHandler.java:40)
    at org.bukkit.craftbukkit.CraftServer.loadPlugins(CraftServer.java:558)
    at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:324)
    at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1225)
    at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:333)
    at java.base/java.lang.Thread.run(Thread.java:1570)

A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------

-- System Details --
Details:
    Minecraft Version: 1.21
    Minecraft Version ID: 1.21
    Operating System: Windows 10 (amd64) version 10.0
    Java Version: 22.0.1, Oracle Corporation
    Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation
    Memory: 811092256 bytes (773 MiB) / 1317011456 bytes (1256 MiB) up to 4278190080 bytes (4080 MiB)
    CPUs: 4
    Processor Vendor: GenuineIntel
    Processor Name: Intel(R) Core(TM) i5-4310U CPU @ 2.00GHz
    Identifier: Intel64 Family 6 Model 69 Stepping 1
    Microarchitecture: Haswell (Client)
    Frequency (GHz): 2.59
    Number of physical packages: 1
    Number of physical CPUs: 2
    Number of logical CPUs: 4
    Graphics card #0 name: Intel(R) HD Graphics Family
    Graphics card #0 vendor: Intel Corporation
    Graphics card #0 VRAM (MiB): 1024.00
    Graphics card #0 deviceId: VideoController1
    Graphics card #0 versionInfo: 20.19.15.5171
    Memory slot #0 capacity (MiB): 8192.00
    Memory slot #0 clockSpeed (GHz): 1.60
    Memory slot #0 type: DDR3
    Memory slot #1 capacity (MiB): 8192.00
    Memory slot #1 clockSpeed (GHz): 1.60
    Memory slot #1 type: DDR3
    Virtual memory max (MiB): 18721.34
    Virtual memory used (MiB): 10579.43
    Swap memory total (MiB): 2432.00
    Swap memory used (MiB): 368.27
    Space in storage for jna.tmpdir (MiB): <path not set>
    Space in storage for org.lwjgl.system.SharedLibraryExtractPath (MiB): <path not set>
    Space in storage for io.netty.native.workdir (MiB): <path not set>
    Space in storage for java.io.tmpdir (MiB): available: 49281.29, total: 121520.84
    Space in storage for workdir (MiB): available: 49281.29, total: 121520.84
    JVM Flags: 47 total; -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
    CraftBukkit Information: 
   BrandInfo: Purpur (purpurmc:purpur) version 1.21-2269-ver/1.21@65d3665 (2024-07-19T05:12:26Z)
   Running: Purpur version 1.21-2269-65d3665 (MC: 1.21) (Implementing API version 1.21-R0.1-SNAPSHOT) false
   Plugins: {}
   Warnings: DEFAULT
   Reload Count: 0
   Threads: { RUNNABLE DestroyJavaVM: [], WAITING Log4j2-AsyncAppenderEventDispatcher-1-Async: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:371), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:519), java.base@22.0.1/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:4013), java.base@22.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3961), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1707), java.base@22.0.1/java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:420), org.apache.logging.log4j.core.appender.AsyncAppenderEventDispatcher.dispatchAll(AsyncAppenderEventDispatcher.java:81), org.apache.logging.log4j.core.appender.AsyncAppenderEventDispatcher.run(AsyncAppenderEventDispatcher.java:73)], TIMED_WAITING JNA Cleaner: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:269), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1847), java.base@22.0.1/java.lang.ref.ReferenceQueue.await(ReferenceQueue.java:71), java.base@22.0.1/java.lang.ref.ReferenceQueue.remove0(ReferenceQueue.java:143), java.base@22.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:218), com.sun.jna.internal.Cleaner$CleanerThread.run(Cleaner.java:154)], RUNNABLE Server thread: [java.base@22.0.1/java.lang.Thread.dumpThreads(Native Method), java.base@22.0.1/java.lang.Thread.getAllStackTraces(Thread.java:2488), org.bukkit.craftbukkit.CraftCrashReport.get(CraftCrashReport.java:35), org.bukkit.craftbukkit.CraftCrashReport.get(CraftCrashReport.java:17), net.minecraft.SystemReport.setDetail(SystemReport.java:71), net.minecraft.CrashReport.<init>(CrashReport.java:41), net.minecraft.server.MinecraftServer.constructOrExtractCrashReport(MinecraftServer.java:1453), net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1370), net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:333), net.minecraft.server.MinecraftServer$$Lambda/0x00000269c0ccf278.run(Unknown Source), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], RUNNABLE Signal Dispatcher: [], RUNNABLE Notification Thread: [], TIMED_WAITING Craft Scheduler Thread - 3: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:410), java.base@22.0.1/java.util.concurrent.LinkedTransferQueue$DualNode.await(LinkedTransferQueue.java:452), java.base@22.0.1/java.util.concurrent.SynchronousQueue$Transferer.xferLifo(SynchronousQueue.java:194), java.base@22.0.1/java.util.concurrent.SynchronousQueue.xfer(SynchronousQueue.java:233), java.base@22.0.1/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:336), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1069), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], RUNNABLE Reference Handler: [java.base@22.0.1/java.lang.ref.Reference.waitForReferencePendingList(Native Method), java.base@22.0.1/java.lang.ref.Reference.processPendingReferences(Reference.java:246), java.base@22.0.1/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:208)], WAITING Finalizer: [java.base@22.0.1/java.lang.Object.wait0(Native Method), java.base@22.0.1/java.lang.Object.wait(Object.java:375), java.base@22.0.1/java.lang.Object.wait(Object.java:348), java.base@22.0.1/java.lang.ref.NativeReferenceQueue.await(NativeReferenceQueue.java:48), java.base@22.0.1/java.lang.ref.ReferenceQueue.remove0(ReferenceQueue.java:158), java.base@22.0.1/java.lang.ref.NativeReferenceQueue.remove(NativeReferenceQueue.java:89), java.base@22.0.1/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:173)], TIMED_WAITING Craft Scheduler Thread - 0: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:410), java.base@22.0.1/java.util.concurrent.LinkedTransferQueue$DualNode.await(LinkedTransferQueue.java:452), java.base@22.0.1/java.util.concurrent.SynchronousQueue$Transferer.xferLifo(SynchronousQueue.java:194), java.base@22.0.1/java.util.concurrent.SynchronousQueue.xfer(SynchronousQueue.java:233), java.base@22.0.1/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:336), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1069), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], TIMED_WAITING Timer hack thread: [java.base@22.0.1/java.lang.Thread.sleepNanos0(Native Method), java.base@22.0.1/java.lang.Thread.sleepNanos(Thread.java:491), java.base@22.0.1/java.lang.Thread.sleep(Thread.java:522), net.minecraft.Util$7.run(Util.java:785)], TIMED_WAITING Watchdog Thread: [java.base@22.0.1/java.lang.Thread.sleepNanos0(Native Method), java.base@22.0.1/java.lang.Thread.sleepNanos(Thread.java:491), java.base@22.0.1/java.lang.Thread.sleep(Thread.java:522), org.spigotmc.WatchdogThread.run(WatchdogThread.java:240)], WAITING Paper Common Worker #0: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:221), ca.spottedleaf.concurrentutil.executor.standard.PrioritisedQueueExecutorThread.run(PrioritisedQueueExecutorThread.java:97)], WAITING RegionFile I/O Thread #0: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:221), ca.spottedleaf.concurrentutil.executor.standard.PrioritisedQueueExecutorThread.run(PrioritisedQueueExecutorThread.java:97)], TIMED_WAITING Server console handler: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:269), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1847), org.jline.utils.NonBlockingPumpReader.read(NonBlockingPumpReader.java:78), org.jline.utils.NonBlockingReader.read(NonBlockingReader.java:57), org.jline.keymap.BindingReader.readCharacter(BindingReader.java:160), org.jline.keymap.BindingReader.readBinding(BindingReader.java:110), org.jline.keymap.BindingReader.readBinding(BindingReader.java:61), org.jline.reader.impl.LineReaderImpl.doReadBinding(LineReaderImpl.java:923), org.jline.reader.impl.LineReaderImpl.readBinding(LineReaderImpl.java:956), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:651), org.jline.reader.impl.LineReaderImpl.readLine(LineReaderImpl.java:468), net.minecrell.terminalconsole.SimpleTerminalConsole.readCommands(SimpleTerminalConsole.java:158), net.minecrell.terminalconsole.SimpleTerminalConsole.start(SimpleTerminalConsole.java:141), net.minecraft.server.dedicated.DedicatedServer$1.run(DedicatedServer.java:118)], TIMED_WAITING pool-58-thread-1: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:269), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1758), java.base@22.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182), java.base@22.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1070), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], TIMED_WAITING Craft Scheduler Thread - 2: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:410), java.base@22.0.1/java.util.concurrent.LinkedTransferQueue$DualNode.await(LinkedTransferQueue.java:452), java.base@22.0.1/java.util.concurrent.SynchronousQueue$Transferer.xferLifo(SynchronousQueue.java:194), java.base@22.0.1/java.util.concurrent.SynchronousQueue.xfer(SynchronousQueue.java:233), java.base@22.0.1/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:336), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1069), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], RUNNABLE WindowsStreamPump: [org.fusesource.jansi.internal.Kernel32.WaitForSingleObject(Native Method), org.jline.terminal.impl.jansi.win.JansiWinSysTerminal.processConsoleInput(JansiWinSysTerminal.java:138), org.jline.terminal.impl.AbstractWindowsTerminal.pump(AbstractWindowsTerminal.java:460), org.jline.terminal.impl.AbstractWindowsTerminal$$Lambda/0x00000269c01332d0.run(Unknown Source), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], RUNNABLE Attach Listener: [], RUNNABLE Netty Server IO #0: [java.base@22.0.1/sun.nio.ch.WEPoll.wait(Native Method), java.base@22.0.1/sun.nio.ch.WEPollSelectorImpl.doSelect(WEPollSelectorImpl.java:114), java.base@22.0.1/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:130), java.base@22.0.1/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:147), io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68), io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:879), io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:526), io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997), io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], TIMED_WAITING Common-Cleaner: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:269), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1847), java.base@22.0.1/java.lang.ref.ReferenceQueue.await(ReferenceQueue.java:71), java.base@22.0.1/java.lang.ref.ReferenceQueue.remove0(ReferenceQueue.java:143), java.base@22.0.1/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:218), java.base@22.0.1/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:140), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570), java.base@22.0.1/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:186)], TIMED_WAITING Yggdrasil Key Fetcher: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:269), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:1758), java.base@22.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182), java.base@22.0.1/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1070), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], RUNNABLE WindowsStreamPump: [app/jdk.internal.le@22.0.1/jdk.internal.org.jline.terminal.impl.jna.win.Kernel32Impl.WaitForSingleObject(Native Method), app/jdk.internal.le@22.0.1/jdk.internal.org.jline.terminal.impl.jna.win.JnaWinSysTerminal.readConsoleInput(JnaWinSysTerminal.java:210), app/jdk.internal.le@22.0.1/jdk.internal.org.jline.terminal.impl.jna.win.JnaWinSysTerminal.processConsoleInput(JnaWinSysTerminal.java:133), app/jdk.internal.le@22.0.1/jdk.internal.org.jline.terminal.impl.AbstractWindowsTerminal.pump(AbstractWindowsTerminal.java:436), app/jdk.internal.le@22.0.1/jdk.internal.org.jline.terminal.impl.AbstractWindowsTerminal$$Lambda/0x00000269c0e36398.run(Unknown Source), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], WAITING Worker-Main-1: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.park(LockSupport.java:371), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block(AbstractQueuedSynchronizer.java:519), java.base@22.0.1/java.util.concurrent.ForkJoinPool.unmanagedBlock(ForkJoinPool.java:4013), java.base@22.0.1/java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3961), java.base@22.0.1/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1707), java.base@22.0.1/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:435), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1070), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)], TIMED_WAITING Craft Scheduler Thread - 1: [java.base@22.0.1/jdk.internal.misc.Unsafe.park(Native Method), java.base@22.0.1/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:410), java.base@22.0.1/java.util.concurrent.LinkedTransferQueue$DualNode.await(LinkedTransferQueue.java:452), java.base@22.0.1/java.util.concurrent.SynchronousQueue$Transferer.xferLifo(SynchronousQueue.java:194), java.base@22.0.1/java.util.concurrent.SynchronousQueue.xfer(SynchronousQueue.java:233), java.base@22.0.1/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:336), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1069), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130), java.base@22.0.1/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642), java.base@22.0.1/java.lang.Thread.runWith(Thread.java:1583), java.base@22.0.1/java.lang.Thread.run(Thread.java:1570)],}

   Force Loaded Chunks: {}
    Server Running: true
    Player Count: 0 / 500; []
    Active Data Packs: vanilla, file/DnT Ancient City Overhaul v2, file/DnT Stronghold Overhaul v2.1, file/Dungeons and Taverns v4.3, file/bukkit, paper (incompatible)
    Available Data Packs: bundle, file/DnT Ancient City Overhaul v2, file/DnT Stronghold Overhaul v2.1, file/Dungeons and Taverns v4.3, file/bukkit, paper (incompatible), trade_rebalance, vanilla
    Enabled Feature Flags: minecraft:vanilla
    World Generation: Experimental
    World Seed: 4868416438819794580
    Is Modded: Definitely; Server brand changed to 'Purpur'
    Type: Dedicated Server (map_server.txt)

Actions to reproduce (if known)

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.

Purpur version

version [23:50:10 INFO]: Checking version, please wait... [23:50:10 INFO]: Current Purpur Version: 1.21-2269-65d3665 (MC: 1.21)*

  • You are running the latest version Previous: 1.21-2265-8f0f20d (MC: 1.21)

Agreements

Other

You might aswell want to view the issue I reported to the team of AdvancedChat, the main problem creator, at https://github.com/AdvancedPlugins/Chat/issues/146 to help you find the solution to the issue. Please read the entire issue I made there as there is loads of information that could be more effective than this issue. There is no Spark Profiler for the server which is not started with -Dpaper.useLegacyPluginLoading=true due to the instant crash upon server start; however, the spark profiler for the server using legacy plugin loading is at https://spark.lucko.me/S9Iqafu0x7 Now, you might say: Why don't I start the server with -Dpaper.useLegacyPluginLoading=true? If I did, some plugins would stop working, such as AdvancedEnchantments and many others.

Plugins: [00:03:24 INFO]: Bukkit Plugins: (59): [00:03:24 INFO]: - AdvancedChat, AdvancedEnchantments, AdvancedJobs, BedrockParity, BetterRTP, BetterTeams, Chunky, ChunkyBorder, Citizens, CMI [00:03:24 INFO]: CMIEInjector, CMILib, CommandPrompter, ConsoleSpamFix, DecentHolograms, DeluxeCoinflip, DeluxeCombat, DeluxeMenus, DeluxeTags, DeluxeWithdraw [00:03:24 INFO]: dynmap, eco, FastAsyncWorldEdit, FastTP, floodgate, Geyser-Spigot, JetsAntiAFKPro, KixsChatGames, LibsDisguises, LifestealCore [00:03:24 INFO]: LiteBans, LPX, Multiverse-Core, MysqlPlayerDataBridge, NBTAPI, packetevents, PlaceholderAPI, PlayerVaults, PremiumVanish, ProtocolLib [00:03:24 INFO]: RayTraceAntiXray, RoseLoot, ShopGUIPlus, SkBee, SkQuery, skRayFall, Skript, skript-placeholders, skript-reflect, spark [00:03:24 INFO]: Vault, ViaBackwards, ViaVersion, Votifier, WorldGuard, WorldGuardExtraFlags, WorldGuardRegionProtect, zAuctionHouseV3, zMenu

Final Words

Please fix the Circular plugin loading error as soon as possible. Now if you require more information, you might find more information at https://github.com/AdvancedPlugins/Chat/issues/146, if not, then reply to me for more information. Again, please fix the Circular plugin loading error as soon as possible.

granny commented 4 months ago

[SimpleProviderStorage] Circular plugin loading detected! [SimpleProviderStorage] Circular load order: [SimpleProviderStorage] AdvancedChat -> PremiumVanish -> dynmap -> Vault -> CMI -> AdvancedChat [SimpleProviderStorage] Please report this to the plugin authors of the first plugin of each loop or join the PaperMC Discord server for further help.