Page 1 of 1

DeadLock

Posted: Sun Sep 10, 2017 10:52 am
by ShinichiYao

Code: Select all

2017.09.10 14:05:48,856	WARNING	360	com.l2jserver.util.DeadLockDetector	DeadLock Found!
"AISTPool-21" Id=338 BLOCKED on com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@34f6f0d1 owned by "AISTPool-6" Id=298
	at com.l2jserver.gameserver.model.actor.L2Character.getAI(L2Character.java:2563)
	-  blocked on com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@34f6f0d1
	at com.l2jserver.gameserver.model.actor.knownlist.MonsterKnownList.addKnownObject(MonsterKnownList.java:44)
	at com.l2jserver.gameserver.model.L2World.addVisibleObject(L2World.java:305)
	at com.l2jserver.gameserver.model.L2Object.spawnMe(L2Object.java:251)
	at com.l2jserver.gameserver.model.actor.L2Character.onTeleported(L2Character.java:558)
	at com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance.onTeleported(L2MonsterInstance.java:115)
	at com.l2jserver.gameserver.model.actor.L2Character.teleToLocation(L2Character.java:753)
	at com.l2jserver.gameserver.model.actor.L2Character.teleToLocation(L2Character.java:771)
	...

	Number of locked synchronizers = 2
	- java.util.concurrent.ThreadPoolExecutor$Worker@25b2d26a
	- java.util.concurrent.locks.ReentrantLock$NonfairSync@154d313e

"AISTPool-6" Id=298 BLOCKED on com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@71e1806d owned by "AISTPool-21" Id=338
	at com.l2jserver.gameserver.model.actor.L2Character.getAI(L2Character.java:2563)
	-  blocked on com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@71e1806d
	at com.l2jserver.gameserver.model.actor.knownlist.MonsterKnownList.addKnownObject(MonsterKnownList.java:44)
	at com.l2jserver.gameserver.model.L2World.addVisibleObject(L2World.java:305)
	at com.l2jserver.gameserver.model.L2Object.spawnMe(L2Object.java:251)
	at com.l2jserver.gameserver.model.actor.L2Character.onTeleported(L2Character.java:558)
	at com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance.onTeleported(L2MonsterInstance.java:115)
	at com.l2jserver.gameserver.model.actor.L2Character.teleToLocation(L2Character.java:753)
	at com.l2jserver.gameserver.model.actor.L2Character.teleToLocation(L2Character.java:771)
	...

	Number of locked synchronizers = 2
	- java.util.concurrent.ThreadPoolExecutor$Worker@187b1485
	- java.util.concurrent.locks.ReentrantLock$NonfairSync@1b8acde7

Java-level deadlock:
	AISTPool-21 is waiting to lock com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@34f6f0d1 which is held by AISTPool-6
	AISTPool-6 is waiting to lock com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@71e1806d which is held by AISTPool-21
Java-level deadlock:
	AISTPool-6 is waiting to lock com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@71e1806d which is held by AISTPool-21
	AISTPool-21 is waiting to lock com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance@34f6f0d1 which is held by AISTPool-6


Re: DeadLock

Posted: Sun Sep 10, 2017 1:10 pm
by Sacrifice
Dont have sufficient space in ThreadPool and cause that Threads stops unwantedly.

Re: DeadLock

Posted: Sun Sep 10, 2017 3:25 pm
by ShinichiYao
How to prevent it happens?

Re: DeadLock

Posted: Sun Sep 10, 2017 4:18 pm
by Sacrifice
The threads of execution of a microprocessor can not be adjusted, for this, better buy a new machine or do not run the client on the same machine where the server is running publicly (This is a huge mistake). This to begin with.

If your server worked perfectly and today you have realized that log you were showing, then it is because some component of your system (RAM, hard disk or even the same processor) could be failing. Normally is the RAM memory. Use a ubuntu live CD to check the status of hard disks and/or RAM.

Check also the ram asigned to gameserver. You need at least 3072Mb + 3072Gb free (if you use geodata).

I do not think you have to go crazy :crazy: with the settings of the threads in the configuration of the server as I have seen in some forums, leave those settings as they come by default and ignore those stupid things.

Good luck! :+1: :wave: