LuckPerms

LuckPerms

41.4k Downloads

Error/Freeze and plugin crash in startup on Velocity

Farmeurimmo opened this issue ยท 13 comments

commented

Description

I'm using docker to run my server with itzg/bungeecord.

The plugin worked fine this morning.
This evening, I have restarted my development server when I noticed that my server doesn't want to boot and was blocked at luckperms startup step. (ProxyInitializeEvent)

Reproduction Steps

Start the server with the jar in /plugins without any luckperms data/config folder.

Expected Behaviour

Load every file and let the proxy be able to finish loading.

Server Details

Velocity 3.2.0-SNAPSHOT (git-b0988bc5-b227)

LuckPerms Version

v5.4.61

Logs and Configs

[init] Resolving type given VELOCITY
[init] Downloading https://papermc.io/api/v2/projects/velocity/versions/3.2.0-SNAPSHOT/builds/227/downloads/velocity-3.2.0-SNAPSHOT-227.jar
[mc-image-helper] 22:06:36.676 INFO  : Downloaded /server/velocity-3.2.0-SNAPSHOT-227.jar
[init] Setting initial memory to 512m and max to 1024m
2023-02-18 22:06:37,561 main WARN Advanced terminal features are not available in this environment
[22:06:38 INFO]: Booting up Velocity 3.2.0-SNAPSHOT (git-b0988bc5-b227)...
[22:06:38 INFO]: Loading localizations...
[22:06:39 INFO]: Connections will use epoll channels, libdeflate (Linux x86_64) compression, OpenSSL 1.1.x (Linux x86_64) ciphers
[22:06:39 WARN]: The proxy is running in offline mode! This is a security risk and you will NOT receive any support!
[22:06:39 INFO]: Loading plugins...
[22:06:39 INFO]: Loaded plugin luckperms 5.4.61 by Luck
[22:06:39 INFO] [ashlesscore]: Loaded velocity plugin, awaiting for proxy initialization...
[22:06:39 INFO]: Loaded plugin ashlesscore 1.0.0-SNAPSHOT by Farmeurimmo
[22:06:39 INFO]: Loaded 2 plugins

Extra Details

And the server isn't continuing. This should be the proxyInitializeEvent with all luckperms startup and after my plugin.

BUT, luckperms create the folder "luckperms" within it another called "libs" with a file named "adventure-4.11.0. jar" in it.

commented

This is fixed in build 228

commented

Read this, and for the 2nd error make sure main.java.net.ashless.velocity.AshlessCore has a (soft) depend set on LuckPerms and isn't getting an instance of the API in a static field,

commented

There isn't any error like said in the FAQ

commented

I mean the server is idle and is doing nothing like if it was waiting for something.

commented

It has finally booted, but with this error :

[init] Resolving type given VELOCITY
[init] Downloading https://papermc.io/api/v2/projects/velocity/versions/3.2.0-SNAPSHOT/builds/227/downloads/velocity-3.2.0-SNAPSHOT-227.jar
[mc-image-helper] 22:18:32.553 INFO  : Skipping /server/velocity-3.2.0-SNAPSHOT-227.jar since it is already up to date
[init] Setting initial memory to 512m and max to 1024m
2023-02-18 22:18:33,467 main WARN Advanced terminal features are not available in this environment
[22:18:34 INFO]: Booting up Velocity 3.2.0-SNAPSHOT (git-b0988bc5-b227)...
[22:18:34 INFO]: Loading localizations...
[22:18:34 INFO]: Connections will use epoll channels, libdeflate (Linux x86_64) compression, OpenSSL 1.1.x (Linux x86_64) ciphers
[22:18:34 WARN]: The proxy is running in offline mode! This is a security risk and you will NOT receive any support!
[22:18:34 INFO]: Loading plugins...
[22:18:35 INFO]: Loaded plugin luckperms 5.4.61 by Luck
[22:18:35 INFO] [ashlesscore]: Loaded velocity plugin, awaiting for proxy initialization...
[22:18:35 INFO]: Loaded plugin ashlesscore 1.0.0-SNAPSHOT by Farmeurimmo
[22:18:35 INFO]: Loaded 2 plugins
[22:18:35 INFO]:         __    
[22:18:35 INFO]:   |    |__)   LuckPerms v5.4.61
[22:18:35 INFO]:   |___ |      Running on Velocity - Velocity
[22:18:35 INFO]: 
[22:18:35 INFO] [luckperms]: Loading configuration...
[22:18:42 INFO] [luckperms]: Loading storage provider... [H2]
[22:18:42 INFO] [luckperms]: Loading internal permission managers...
[22:18:42 ERROR]: Couldn't pass ProxyInitializeEvent to luckperms
java.lang.NoClassDefFoundError: me/lucko/luckperms/lib/bytebuddy/dynamic/scaffold/subclass/ConstructorStrategy
	at me.lucko.luckperms.common.plugin.AbstractLuckPermsPlugin.enable(AbstractLuckPermsPlugin.java:215) ~[?:?]
	at me.lucko.luckperms.velocity.LPVelocityBootstrap.onEnable(LPVelocityBootstrap.java:143) ~[?:?]
	at me.lucko.luckperms.velocity.Lmbda$1.execute(Unknown Source) ~[?:?]
	at com.velocitypowered.proxy.event.UntargetedEventHandler$VoidHandler.lambda$buildHandler$0(UntargetedEventHandler.java:56) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at com.velocitypowered.proxy.event.VelocityEventManager.fire(VelocityEventManager.java:598) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at com.velocitypowered.proxy.event.VelocityEventManager.lambda$fire$5(VelocityEventManager.java:479) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]
Caused by: java.lang.ClassNotFoundException: me.lucko.luckperms.lib.bytebuddy.dynamic.scaffold.subclass.ConstructorStrategy
	at com.velocitypowered.proxy.plugin.PluginClassLoader.loadClass0(PluginClassLoader.java:87) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at com.velocitypowered.proxy.plugin.PluginClassLoader.loadClass(PluginClassLoader.java:64) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	... 9 more
[22:18:42 INFO] [ashlesscore]: Registering dependencies...
[22:18:42 ERROR]: Couldn't pass ProxyInitializeEvent to ashlesscore
net.luckperms.api.LuckPermsProvider$NotLoadedException: The LuckPerms API isn't loaded yet!
This could be because:
  a) the LuckPerms plugin is not installed or it failed to enable
  b) the plugin in the stacktrace does not declare a dependency on LuckPerms
  c) the plugin in the stacktrace is retrieving the API before the plugin 'enable' phase
     (call the #get method in onEnable, not the constructor!)

	at net.luckperms.api.LuckPermsProvider.get(LuckPermsProvider.java:53) ~[?:?]
	at main.java.net.ashless.velocity.AshlessCore.onProxyInitialization(AshlessCore.java:62) ~[?:?]
	at main.java.net.ashless.velocity.Lmbda$3.execute(Unknown Source) ~[?:?]
	at com.velocitypowered.proxy.event.UntargetedEventHandler$VoidHandler.lambda$buildHandler$0(UntargetedEventHandler.java:56) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at com.velocitypowered.proxy.event.VelocityEventManager.fire(VelocityEventManager.java:598) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at com.velocitypowered.proxy.event.VelocityEventManager.lambda$fire$5(VelocityEventManager.java:479) ~[velocity-3.2.0-SNAPSHOT-227.jar:3.2.0-SNAPSHOT (git-b0988bc5-b227)]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ~[?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ~[?:?]
	at java.lang.Thread.run(Thread.java:833) ~[?:?]
[22:18:42 INFO]: Listening on /0.0.0.0:25577
[22:18:42 INFO]: Velocity and some of its plugins collect metrics and send them to bStats (https://bStats.org).
[22:18:42 INFO]: bStats collects some basic information for plugin authors, like how many people use
[22:18:42 INFO]: their plugin and their total player count. It's recommended to keep bStats enabled, but
[22:18:42 INFO]: if you're not comfortable with this, you can opt-out by editing the config.txt file in
[22:18:42 INFO]: the '/plugins/bStats/' folder and setting enabled to false.
commented

I checked luckperms folder and it seems that the plugin created/retrieve everything that he needs.

commented

Whoops, try deleting the libs folder and restarting the server

commented

Capture
This is taking too much time I think...
I know he is downloading something, but I have a 1mo/s connection...

23:45 Edit : Still not finished

commented

I can ping the repos.
Capture
Nevermind he is idling without downloading anything.
Capture

commented

Maybe it's a problem with the new Velocity update?
image

Because i can't startup Velocity too on #227 (#226 works fine for me)
image

commented

luckperms-dump.txt
Here's the thread dump from the moment it's stuck in the Performing initial data load stage. The only plugin running on the proxy is LP.

commented

Maybe it's a problem with the new Velocity update? image

Because i can't startup Velocity too on #227 (#226 works fine for me) image

I can also reproduce this behavior. Perhaps luck perms is hitting the 200-thread limit?

commented

Maybe it's a problem with the new Velocity update? image

Because i can't startup Velocity too on #227 (#226 works fine for me) image

You're right, I'm not having any trouble with the B226 version of velocity.