LuckPerms

LuckPerms

41.4k Downloads

[1.12.2-Sponge-4.0.85] Server freeze randomly after player joins.

0Fox opened this issue ยท 3 comments

commented

So last time Luck did fix to this problem, when I asked him in discord, but now this happens again, very rare, like once a day my server freezes because random player joins the server.

Fix i'm talking about: 764665c
Here is new jstack:
https://gist.githubusercontent.com/anonymous/8e821b8d3963f9438ec2f0ceac71278f/raw/7ce32fc283502778bffc4e38c54aa4a4d23c1a83/2018-01-10_07-37-49.txt

I hope you can help me this time, ask any info you need.

commented

If I was you I'd do some actually profiling to pin point exactly where the issue is.

For all you know it could be due to a mod that is calling on the mojang api too many times and not using the actual server cache instead - that has been known to happen https://www.eclipse.org/mat/

commented

Doesn't appear to be directly caused by LP this time.

"Server thread" #18 prio=5 os_prio=0 tid=0x00007f148a841000 nid=0x1e33 waiting on condition [0x00007f140fffd000]
   java.lang.Thread.State: WAITING (parking)
 at sun.misc.Unsafe.park(Native Method)
 - parking to wait for  <0x00000007b4032328> (a java.util.concurrent.CompletableFuture$Signaller)
 at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
 at java.util.concurrent.CompletableFuture$Signaller.block(CompletableFuture.java:1693)
 at java.util.concurrent.ForkJoinPool.managedBlock(ForkJoinPool.java:3323)
 at java.util.concurrent.CompletableFuture.waitingGet(CompletableFuture.java:1729)
 at java.util.concurrent.CompletableFuture.join(CompletableFuture.java:1934)
 at net.minecraft.entity.player.EntityPlayerMP.resolveNullable(EntityPlayerMP.java:2618)
 at net.minecraft.entity.player.EntityPlayerMP.getActiveContexts(EntityPlayerMP.java:2653)
 at net.minecraft.entity.player.EntityPlayerMP.hasPermission(EntityPlayerMP.java:2710)
 at me.ryanhamshire.griefprevention.listener.PlayerEventHandler.onPlayerLogin(PlayerEventHandler.java:799)
 at org.spongepowered.common.event.listener.LoginListener_PlayerEventHandler_onPlayerLogin159.handle(Unknown Source)
 at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:95)
 at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:328)
 at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:361)
 at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:345)
 at org.spongepowered.common.SpongeImpl.postEvent(SpongeImpl.java:197)
 at net.minecraft.server.management.PlayerList.initializeConnectionToPlayer(PlayerList.java:1504)
 at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.completeServerSideConnection(NetworkDispatcher.java:256)
 - locked <0x0000000757a05cd8> (a net.minecraftforge.fml.common.network.handshake.NetworkDispatcher)
 at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.access$100(NetworkDispatcher.java:72)
 at net.minecraftforge.fml.common.network.handshake.NetworkDispatcher$1.func_73660_a(NetworkDispatcher.java:205)
 at net.minecraft.network.NetworkManager.func_74428_b(NetworkManager.java:285)
 at net.minecraft.network.NetworkSystem.func_151269_c(NetworkSystem.java:179)
 - locked <0x00000006a481f9e0> (a java.util.Collections$SynchronizedRandomAccessList)
 at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:788)
 at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:396)
 at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:666)
 at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:524)
 at java.lang.Thread.run(Thread.java:748)

It's blocking on a call to return the Subject, which depending on your storage type, may block for a while.

commented

Not sure - pretty confident this isn't an LP issue though.