SocketReader error

Post here your questions about SFS2X. Here we discuss all server-side matters. For client API questions see the dedicated forums.

Moderators: Lapo, Bax

yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

SocketReader error

Postby yekmer » 22 Feb 2012, 21:39

Hi,

We get the exception below while we have around 1700 CCU, everyting seems well on the server, we started to take the exception below, and new users could not logged in. By the way CPU load started to increase. Afterwards we restarted server everything seems well now, Do you have any idea why this can be happened?

Feb 2012 | 21:44:46,857 | INFO | SocketReader | bitswarm.core.SocketAcceptor | | Session created: { Id: 582, Type: DEFAULT, Logged: No, IP: 95.13.45.10:50155 } on Server port: 9933 <---> 50155
22 Feb 2012 | 21:44:46,858 | WARN | SocketReader | bitswarm.core.SocketReader | | Problems in SocketReader main loop: java.lang.NullPointerException, Thread: Thread[SocketReader,5,main]
22 Feb 2012 | 21:44:46,858 | WARN | SocketReader | bitswarm.core.SocketReader | |
java.lang.NullPointerException
com.smartfoxserver.bitswarm.core.SocketAcceptor.handleAcceptableConnections(SocketAcceptor.java:233)
com.smartfoxserver.bitswarm.core.SocketReader.run(SocketReader.java:166)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)
User avatar
Lapo
Site Admin
Posts: 23027
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: SocketReader error

Postby Lapo » 23 Feb 2012, 09:13

What server version please?
What OS are you using? Are you sure the machine CPU is not maxed out when this happens?
Thanks
Lapo
--
gotoAndPlay()
...addicted to flash games
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 23 Feb 2012, 09:42

Hi, I am using SmartFoxServer 2X - Version 2.0.1

Linux kernel version

2.6.32-5-xen-amd64

Linux version

Debian 6.0.2

Yes I am sure CPU is not maximumed. I am attached munin load avarege graph below. It was down for half an hour, then we restarted server and it worked well.

This morning we restart the server and then we get the same error again. then again restarted and get the same error. (We have around 600CCU at that time) After 3rd restart it seems well.

I think that it could not open new socket connections, if somebody logged in before continues to play. But I am not sure about that.

Another interesting thing I am running another smartfox server(community version here(but the same smartfox version)) on a similar test machine with the same code. Production version could not handle logout event when browser refreshes, but test version handles refresh and logs out user.
Attachments
loadaverage.png
load average graph
(13.6 KiB) Not downloaded yet
User avatar
Lapo
Site Admin
Posts: 23027
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: SocketReader error

Postby Lapo » 23 Feb 2012, 10:08

Are you sure you are not getting that error during restarts?
That would be pretty normal and of no concern, otherwise it could be very difficult to track down.
Lapo

--

gotoAndPlay()

...addicted to flash games
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 23 Feb 2012, 10:10

It handles logout event after 2-3 seconds on production, so it is not a big problem for us now
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 23 Feb 2012, 10:43

Hi,

You are right we are taking the error above after restart. The exception that we take on running system is shown below. We are getting this exception a lot during CPU increase time.

com.smartfoxserver.v2.exceptions.SFSRuntimeException: -Unexpected- Cannot find any User for Session: { Id: 72363, Type: DEFAULT, Logged: No, IP: 78.165.79.198:4877 }
com.smartfoxserver.v2.SmartFoxServer.onSessionReconnectionTry(SmartFoxServer.java:921)
com.smartfoxserver.v2.SmartFoxServer.access$3(SmartFoxServer.java:916)
com.smartfoxserver.v2.SmartFoxServer$BitSwarmEventListener.handleEvent(SmartFoxServer.java:977)
com.smartfoxserver.bitswarm.service.BaseCoreService.dispatchEvent(BaseCoreService.java:110)
com.smartfoxserver.bitswarm.sessions.DefaultSessionManager.dispatchSessionReconnectionTryEvent(DefaultSessionManager.java:778)
com.smartfoxserver.bitswarm.sessions.DefaultSessionManager.onSocketDisconnected(DefaultSessionManager.java:349)
com.smartfoxserver.bitswarm.sessions.DefaultSessionManager.onSocketDisconnected(DefaultSessionManager.java:335)
com.smartfoxserver.bitswarm.core.SocketReader.closeTcpConnection(SocketReader.java:349)
com.smartfoxserver.bitswarm.core.SocketReader.readTcpData(SocketReader.java:318)
com.smartfoxserver.bitswarm.core.SocketReader.readIncomingSocketData(SocketReader.java:228)
com.smartfoxserver.bitswarm.core.SocketReader.run(SocketReader.java:172)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)


It can be caused by our logout function, we are not calling disconnectUser at logout. If it can be caused by this reason we can add the code and try after that.

Thanks
User avatar
Lapo
Site Admin
Posts: 23027
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: SocketReader error

Postby Lapo » 23 Feb 2012, 11:45

Ok, this makes alot more sense :)
So the error at restart is no problem. It's not even an error, the SocketReader has to be interrupted in order to be shut down so we could have avoided to log that information but we do for debugging purposes.

The other error you have reported, again, is not exactly a server issue. SFS2X simply notifies that a client trying to reconnect is not recognized. I I think there could be a connection with the logout.
If you logout and loose connection before you login again you don't have a User object assigned on the server side, which is necessary for the reconnection system.

I think you could try a different strategy. Instead of logging out, force a disconnection from client side and then start a new connection. It should eliminate the problem.
Let us know how it works for you
Lapo

--

gotoAndPlay()

...addicted to flash games
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 23 Feb 2012, 12:47

Thanks, I will try this solution tomorrow and inform you if it works or not. Thanks at all
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 28 Feb 2012, 13:22

Hi, me again

After that time server crashed several times. (Extension Cmd: get various values, one of was get_hand that I implement) One time that server crashed I got these errors

27 Feb 2012 | 21:20:52,671 | ERROR | com.smartfoxserver.v2.controllers.ExtensionController-4 | v2.controllers.ExtensionController | |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Exception: java.lang.NullPointerException
Message: *** Null ***
Description: Error while handling client request in extension: { Ext: OkeyhaneExtension, Type: JAVA, Lev: ZONE, { Zone: okeyhane }, {} }
Extension Cmd: get_hand
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::



27 Feb 2012 | 21:20:51,338 | WARN | com.smartfoxserver.v2.controllers.ExtensionController-1 | v2.protocol.SFSIoHandler | |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Exception: java.util.ConcurrentModificationException
Message: *** Null ***
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


27 Feb 2012 | 21:20:52,431 | WARN | com.smartfoxserver.v2.controllers.ExtensionController-7 | v2.protocol.SFSIoHandler | |
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
Exception: java.lang.NullPointerException
Message: *** Null ***
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Another time that server crashes, I get so many these errors

com.smartfoxserver.v2.exceptions.SFSExtensionException: Extension Request refused. Sender is not a User: { Id: 30683, Type: DEFAULT, Logged: No, IP: 82.238.101.64:51697 }
com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:65)
com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
java.lang.Thread.run(Unknown Source)

This could be rised because we are not truly handling connection retry events. We are implementing client GUI freeze while connection retry, I wonder that if that would solve our problem. And another issue is we have overriden user maximum idle time as : 3600, and user connection time frame as: 2

Am I missing something, or doing something wrong.
User avatar
Lapo
Site Admin
Posts: 23027
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: SocketReader error

Postby Lapo » 28 Feb 2012, 17:46

When you say "crashed" you mean that the server stopped and became unresponsive? That's what a crash is.
From what I see in your transcript those are just runtime errors that shouldn't cause any problems, besides indicating a programming issue.
Most of those to me look like unhandled errors in your server side code. Have you reviewed your extension?

This could be rised because we are not truly handling connection retry events. We are implementing client GUI freeze while connection retry, I wonder that if that would solve our problem. And another issue is we have overriden user maximum idle time as : 3600, and user connection time frame as: 2

Absolutely, you must disable the GUI when you get the reconnection event, otherwise you will get the error you have just reported.
When the user is diconnected the session object is kept alive but further requests will be refused until the user performs a successful login in the Zone (which is handled behind the scenes by the reconnection system)
Lapo

--

gotoAndPlay()

...addicted to flash games
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 01 Mar 2012, 12:30

Hi again,

While logged in users playing the game, sometime new users can not login, but already logged in users continue to play. Clients try to login after connect is successfull, but login event is not executed at server side. We do not see any log at loginhandler. This is true for admin interface too. If we are logged into admin interface before we can use it, but at that time if we are not logged in, we can not login to admin interface.

At that time system queue statuses seems normal around 0, cpu and memory values are not critical, they have low values. We have up to 2500 concurrent users.

We have implemented the gui freeze while connection retry, but still have the problem I described above.

Thanks
User avatar
Lapo
Site Admin
Posts: 23027
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: SocketReader error

Postby Lapo » 01 Mar 2012, 15:47

Pay attention to database connections if you use them in the login handler.
One issue we have seen at times is forgetting to close the DB connection which eventually leads to db-connection exhaustion. When this happens all of your next login requests will have to wait in line until a connection is available. Each Extension thread will hang in there and no more logins will be possible.

Check it out
Lapo

--

gotoAndPlay()

...addicted to flash games
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 01 Mar 2012, 16:12

Hi,

I am not using smartfox database manager, I am using my own. Mysql does not seems to be overloaded. Players who logged in before continues to play, and the are executed in different threads, so if there is a lack of connection, then players and games should be affected too, but it does not seems so. I am logging before log in process going to database. And It does not logs anything. Which means login handler event does not works. May be login thread queue does not release existing threads, I do not know why.

We created another zone which uses default login not custom login. I will try to login to that zone while this problem occurs, then I will say what happens.
User avatar
Lapo
Site Admin
Posts: 23027
Joined: 21 Mar 2005, 09:50
Location: Italy

Re: SocketReader error

Postby Lapo » 01 Mar 2012, 16:31

Try taking a thread dump when the problem occurs.
It can be in the console can be done by hitting ctrl+break (Windows) or sending kill -SIGQUIT to the process (under Linux/Unix)
Alternatively you can use jconsole or VisualVM
Lapo

--

gotoAndPlay()

...addicted to flash games
yekmer
Posts: 10
Joined: 22 Feb 2012, 21:31

Re: SocketReader error

Postby yekmer » 02 Mar 2012, 15:04

Hi,

Javadump is like below. I created two additional zones but they were empty. I am sending admin interface screenshots.


Full thread dump Java HotSpot(TM) 64-Bit Server VM (17.0-b16 mixed mode):

"pool-1-thread-4" prio=10 tid=0x0000000042169000 nid=0x3ccb waiting on condition [0x00007fc66f2f1000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf2060> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"pool-1-thread-3" prio=10 tid=0x0000000042c99800 nid=0x3cb6 waiting on condition [0x00007fc66f3f2000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf2060> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"pool-1-thread-2" prio=10 tid=0x0000000041f03000 nid=0x3cb5 waiting on condition [0x00007fc66f4f3000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf2060> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"DestroyJavaVM" prio=10 tid=0x00007fc66807e000 nid=0x3bc0 waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE

"pool-1-thread-1" prio=10 tid=0x00007fc66807d000 nid=0x3cb4 runnable [0x00007fc66f5f4000]
java.lang.Thread.State: RUNNABLE
at com.noktagames.server.ai.OkeyBotUtil.isAValidTile(OkeyBotUtil.java:200)
at com.noktagames.server.ai.OkeyBotUtil.isAValidTile(OkeyBotUtil.java:186)
at com.noktagames.server.ai.OkeySimpleServerBot.checkHand(OkeySimpleServerBot.java:484)
at com.noktagames.server.ai.OkeySimpleServerBot.drawnTile(OkeySimpleServerBot.java:152)
at com.noktagames.server.ai.OkeyBotUtil.botMove(OkeyBotUtil.java:370)
at com.noktagames.server.tasks.TaskStandUp.executeBotSatProcedure(TaskStandUp.java:216)
at com.noktagames.server.tasks.TaskStandUp.execute(TaskStandUp.java:127)
at com.noktagames.server.model.Table.checkForNotSitting(Table.java:124)
at com.noktagames.server.util.ConnectionUtil.logout(ConnectionUtil.java:50)
at com.noktagames.server.handlers.DisconnectEventHandler.handleServerEvent(DisconnectEventHandler.java:22)
at com.smartfoxserver.v2.extensions.SFSExtension.handleServerEvent(SFSExtension.java:242)
at com.smartfoxserver.v2.entities.managers.SFSExtensionManager.dispatchEvent(SFSExtensionManager.java:760)
at com.smartfoxserver.v2.entities.managers.SFSExtensionManager.dispatchZoneLevelEvent(SFSExtensionManager.java:685)
at com.smartfoxserver.v2.entities.managers.SFSExtensionManager.handleServerEvent(SFSExtensionManager.java:912)
at com.smartfoxserver.v2.core.SFSEventManager$SFSEventRunner.run(SFSEventManager.java:64)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"Scheduler1-thread-1" prio=10 tid=0x00007fc66807a000 nid=0x3cb3 waiting on condition [0x00007fc66f6f5000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.smartfoxserver.bitswarm.util.scheduling.Scheduler.run(Scheduler.java:153)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"SocketWriter-1" prio=10 tid=0x00007fc668078000 nid=0x3cb2 waiting on condition [0x00007fc66f7f6000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf4b08> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.LinkedBlockingQueue.take(Unknown Source)
at com.smartfoxserver.bitswarm.core.SocketWriter.run(SocketWriter.java:182)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"SocketAcceptor-1" prio=10 tid=0x00007fc668076000 nid=0x3cb1 runnable [0x00007fc66f8f7000]
java.lang.Thread.State: RUNNABLE
at sun.nio.ch.EPollArrayWrapper.epollWait(Native Method)
at sun.nio.ch.EPollArrayWrapper.poll(Unknown Source)
at sun.nio.ch.EPollSelectorImpl.doSelect(Unknown Source)
at sun.nio.ch.SelectorImpl.lockAndDoSelect(Unknown Source)
- locked <0x00007fc68ddf25d8> (a sun.nio.ch.Util$1)
- locked <0x00007fc68ddf25f0> (a java.util.Collections$UnmodifiableSet)
- locked <0x00007fc68ddf2560> (a sun.nio.ch.EPollSelectorImpl)
at sun.nio.ch.SelectorImpl.select(Unknown Source)
at sun.nio.ch.SelectorImpl.select(Unknown Source)
at com.smartfoxserver.bitswarm.core.SocketAcceptor.acceptLoop(SocketAcceptor.java:174)
at com.smartfoxserver.bitswarm.core.SocketAcceptor.run(SocketAcceptor.java:153)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"SocketReader" prio=10 tid=0x00007fc668074000 nid=0x3cb0 waiting for monitor entry [0x00007fc66f9f8000]
java.lang.Thread.State: BLOCKED (on object monitor)
at org.apache.log4j.Category.callAppenders(Category.java:204)
- waiting to lock <0x00007fc68ddf3390> (a org.apache.log4j.Logger)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:856)
at org.slf4j.impl.Log4jLoggerAdapter.info(Log4jLoggerAdapter.java:300)
at com.smartfoxserver.bitswarm.sessions.DefaultSessionManager.removeSession(DefaultSessionManager.java:269)
at com.smartfoxserver.bitswarm.sessions.DefaultSessionManager.onSocketDisconnected(DefaultSessionManager.java:355)
at com.smartfoxserver.bitswarm.sessions.DefaultSessionManager.onSocketDisconnected(DefaultSessionManager.java:335)
at com.smartfoxserver.bitswarm.core.SocketReader.closeTcpConnection(SocketReader.java:349)
at com.smartfoxserver.bitswarm.core.SocketReader.readTcpData(SocketReader.java:318)
at com.smartfoxserver.bitswarm.core.SocketReader.readIncomingSocketData(SocketReader.java:228)
at com.smartfoxserver.bitswarm.core.SocketReader.run(SocketReader.java:172)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.ExtensionController-8" prio=10 tid=0x00007fc668072000 nid=0x3caf runnable [0x00007fc66faf9000]
java.lang.Thread.State: RUNNABLE
at com.noktagames.server.model.GamePlayer.getOrderedHand(GamePlayer.java:77)
at com.noktagames.server.util.ProtocolUtil.addHandSFSObjectList(ProtocolUtil.java:506)
at com.noktagames.server.tasks.TaskGetHand.execute(TaskGetHand.java:40)
at com.noktagames.server.handlers.GetHandHandler.handleClientRequest(GetHandHandler.java:20)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


"com.smartfoxserver.v2.controllers.ExtensionController-7" prio=10 tid=0x00007fc668070000 nid=0x3cae runnable [0x00007fc66fbfa000]
java.lang.Thread.State: RUNNABLE
at java.lang.AbstractStringBuilder.stringSizeOfInt(Unknown Source)
at java.lang.AbstractStringBuilder.append(Unknown Source)
at java.lang.StringBuilder.append(Unknown Source)
at com.noktagames.server.model.GamePlayer.getOrderedHand(GamePlayer.java:78)
at com.noktagames.server.util.ProtocolUtil.addHandSFSObjectList(ProtocolUtil.java:506)
at com.noktagames.server.tasks.TaskGetHand.execute(TaskGetHand.java:40)
at com.noktagames.server.handlers.GetHandHandler.handleClientRequest(GetHandHandler.java:20)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.ExtensionController-6" prio=10 tid=0x00007fc66806e000 nid=0x3cad runnable [0x00007fc66fcfb000]
java.lang.Thread.State: RUNNABLE
at java.util.ArrayList.contains(Unknown Source)
at com.noktagames.server.ai.OkeyBotUtil.isAValidTile(OkeyBotUtil.java:194)
at com.noktagames.server.ai.OkeyBotUtil.isAValidTile(OkeyBotUtil.java:186)
at com.noktagames.server.ai.OkeySimpleServerBot.checkHand(OkeySimpleServerBot.java:484)
at com.noktagames.server.ai.OkeySimpleServerBot.drawnTile(OkeySimpleServerBot.java:152)
at com.noktagames.server.ai.OkeyBotUtil.botMove(OkeyBotUtil.java:370)
at com.noktagames.server.tasks.TaskStandUp.executeBotSatProcedure(TaskStandUp.java:216)
at com.noktagames.server.tasks.TaskStandUp.execute(TaskStandUp.java:127)
at com.noktagames.server.tasks.TaskQuitTable.execute(TaskQuitTable.java:77)
at com.noktagames.server.handlers.QuitTableHandler.handleClientRequest(QuitTableHandler.java:31)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.ExtensionController-5" prio=10 tid=0x00007fc66806c800 nid=0x3cac runnable [0x00007fc66fdfc000]
java.lang.Thread.State: RUNNABLE
at java.lang.AbstractStringBuilder.<init>(Unknown Source)
at java.lang.StringBuilder.<init>(Unknown Source)
at com.noktagames.server.model.GamePlayer.getOrderedHand(GamePlayer.java:78)
at com.noktagames.server.util.ProtocolUtil.addHandSFSObjectList(ProtocolUtil.java:506)
at com.noktagames.server.tasks.TaskGetHand.execute(TaskGetHand.java:40)
at com.noktagames.server.handlers.GetHandHandler.handleClientRequest(GetHandHandler.java:20)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)


"com.smartfoxserver.v2.controllers.ExtensionController-4" prio=10 tid=0x00007fc66806a800 nid=0x3cab runnable [0x00007fc66fefd000]
java.lang.Thread.State: RUNNABLE
at com.noktagames.server.model.GamePlayer.getOrderedHand(GamePlayer.java:77)
at com.noktagames.server.util.ProtocolUtil.addHandSFSObjectList(ProtocolUtil.java:506)
at com.noktagames.server.tasks.TaskGetHand.execute(TaskGetHand.java:40)
at com.noktagames.server.handlers.GetHandHandler.handleClientRequest(GetHandHandler.java:20)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.ExtensionController-3" prio=10 tid=0x00007fc668068800 nid=0x3caa runnable [0x00007fc66fffe000]
java.lang.Thread.State: RUNNABLE
at com.noktagames.server.model.GamePlayer.getOrderedHand(GamePlayer.java:77)
at com.noktagames.server.util.ProtocolUtil.addHandSFSObjectList(ProtocolUtil.java:506)
at com.noktagames.server.tasks.TaskGetHand.execute(TaskGetHand.java:40)
at com.noktagames.server.handlers.GetHandHandler.handleClientRequest(GetHandHandler.java:20)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.ExtensionController-2" prio=10 tid=0x00007fc668067000 nid=0x3ca9 runnable [0x00007fc6741ef000]
java.lang.Thread.State: RUNNABLE
at java.util.Arrays.copyOf(Unknown Source)
at java.lang.AbstractStringBuilder.expandCapacity(Unknown Source)
at java.lang.AbstractStringBuilder.append(Unknown Source)
at java.lang.StringBuffer.append(Unknown Source)
- locked <0x00007fc87fa781a0> (a java.lang.StringBuffer)
at org.apache.log4j.helpers.PatternConverter.format(PatternConverter.java:88)
at org.apache.log4j.PatternLayout.format(PatternLayout.java:502)
at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:302)
at org.apache.log4j.DailyRollingFileAppender.subAppend(DailyRollingFileAppender.java:359)
at org.apache.log4j.WriterAppender.append(WriterAppender.java:160)
at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
- locked <0x00007fc68ddfb1a8> (a org.apache.log4j.DailyRollingFileAppender)
at org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
at org.apache.log4j.Category.callAppenders(Category.java:206)
- locked <0x00007fc68ddf3390> (a org.apache.log4j.Logger)
at org.apache.log4j.Category.forcedLog(Category.java:391)
at org.apache.log4j.Category.log(Category.java:856)
at org.slf4j.impl.Log4jLoggerAdapter.warn(Log4jLoggerAdapter.java:396)
at com.smartfoxserver.bitswarm.util.Logging.logStackTrace(Logging.java:83)
at com.smartfoxserver.bitswarm.util.Logging.logStackTrace(Logging.java:63)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:107)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.ExtensionController-1" prio=10 tid=0x00007fc668065000 nid=0x3ca8 runnable [0x00007fc6742f0000]
java.lang.Thread.State: RUNNABLE
at java.lang.StringBuilder.append(Unknown Source)
at java.lang.StringBuilder.<init>(Unknown Source)
at com.noktagames.server.model.GamePlayer.getOrderedHand(GamePlayer.java:78)
at com.noktagames.server.util.ProtocolUtil.addHandSFSObjectList(ProtocolUtil.java:506)
at com.noktagames.server.tasks.TaskGetHand.execute(TaskGetHand.java:40)
at com.noktagames.server.handlers.GetHandHandler.handleClientRequest(GetHandHandler.java:20)
at com.smartfoxserver.v2.extensions.SFSExtension.handleClientRequest(SFSExtension.java:192)
at com.smartfoxserver.v2.controllers.ExtensionController.processRequest(ExtensionController.java:137)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:96)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.SystemController-4" prio=10 tid=0x00007fc66801b800 nid=0x3ca7 waiting on condition [0x00007fc6743f1000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf6bc8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.PriorityBlockingQueue.take(Unknown Source)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:95)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.SystemController-3" prio=10 tid=0x00007fc66801a000 nid=0x3ca6 waiting on condition [0x00007fc6744f2000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf6bc8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.PriorityBlockingQueue.take(Unknown Source)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:95)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"com.smartfoxserver.v2.controllers.SystemController-2" prio=10 tid=0x00007fc668019800 nid=0x3ca5 waiting on condition [0x00007fc6745f3000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf6bc8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.PriorityBlockingQueue.take(Unknown Source)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:95)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)



"com.smartfoxserver.v2.controllers.SystemController-1" prio=10 tid=0x00007fc668004800 nid=0x3ca4 waiting on condition [0x00007fc6747f5000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddf6bc8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(Unknown Source)
at java.util.concurrent.PriorityBlockingQueue.take(Unknown Source)
at com.smartfoxserver.bitswarm.controllers.AbstractController.run(AbstractController.java:95)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"MongoCleaner750556787" daemon prio=10 tid=0x00000000421d5800 nid=0x3c8c waiting on condition [0x00007fc6746f4000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.mongodb.Mongo$DBCleanerThread.run(Mongo.java:681)

"Thread-20" prio=10 tid=0x000000004211c800 nid=0x3c7f in Object.wait() [0x00007fc6748f6000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68ddf94d8> (a snaq.util.EventDispatcher)
at java.lang.Object.wait(Object.java:485)
at snaq.util.EventDispatcher.run(EventDispatcher.java:82)
- locked <0x00007fc68ddf94d8> (a snaq.util.EventDispatcher)

"Thread-19" prio=10 tid=0x00000000422f5000 nid=0x3c7b in Object.wait() [0x00007fc6749f7000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at snaq.util.EventDispatcher.run(EventDispatcher.java:82)
- locked <0x00007fc68ddf71b0> (a snaq.util.EventDispatcher)

"Cleaner-thread-2" prio=10 tid=0x000000004214c000 nid=0x3c7a waiting on condition [0x00007fc674af8000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at snaq.util.ObjectPool$Cleaner.run(ObjectPool.java:1295)

"Thread-17" daemon prio=10 tid=0x0000000042480000 nid=0x3c3b waiting on condition [0x00007fc677b56000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:104)

"MongoCleaner1196438616" daemon prio=10 tid=0x00007fc68069c000 nid=0x3be9 waiting on condition [0x00007fc677a55000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.mongodb.Mongo$DBCleanerThread.run(Mongo.java:681)


"Thread-14" prio=10 tid=0x00007fc680599800 nid=0x3be7 in Object.wait() [0x00007fc677c57000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68ddfd2f8> (a snaq.util.EventDispatcher)
at java.lang.Object.wait(Object.java:485)
at snaq.util.EventDispatcher.run(EventDispatcher.java:82)
- locked <0x00007fc68ddfd2f8> (a snaq.util.EventDispatcher)

"Thread-13" prio=10 tid=0x00007fc680672000 nid=0x3be6 in Object.wait() [0x00007fc677d58000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68ddfd3f0> (a snaq.util.EventDispatcher)
at java.lang.Object.wait(Object.java:485)
at snaq.util.EventDispatcher.run(EventDispatcher.java:82)
- locked <0x00007fc68ddfd3f0> (a snaq.util.EventDispatcher)

"Cleaner-thread-1" prio=10 tid=0x00007fc6805ea000 nid=0x3be5 in Object.wait() [0x00007fc677e59000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68ddfdd98> (a snaq.db.ConnectionPool)
at java.lang.Object.wait(Object.java:485)
at snaq.util.ObjectPool$Cleaner.run(ObjectPool.java:1281)
- locked <0x00007fc68ddfdd98> (a snaq.db.ConnectionPool)

"Thread-11" daemon prio=10 tid=0x00007fc6803db000 nid=0x3be4 waiting on condition [0x00007fc67b1be000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:104)

"pool-2-thread-8" prio=10 tid=0x00007fc6808b0800 nid=0x3be3 waiting on condition [0x00007fc67b2bf000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfacd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)



"pool-2-thread-7" prio=10 tid=0x00007fc680641800 nid=0x3be2 runnable [0x00007fc67b5c7000]
java.lang.Thread.State: RUNNABLE
at java.lang.StringBuilder.append(Unknown Source)
at java.lang.StringBuilder.<init>(Unknown Source)
at com.noktagames.server.ai.OkeyBotUtil.getSameColorTiles(OkeyBotUtil.java:153)
at com.noktagames.server.ai.OkeyBotUtil.isAValidTile(OkeyBotUtil.java:242)
at com.noktagames.server.ai.OkeyBotUtil.isAValidTile(OkeyBotUtil.java:186)
at com.noktagames.server.ai.OkeySimpleServerBot.checkHand(OkeySimpleServerBot.java:484)
at com.noktagames.server.ai.OkeySimpleServerBot.play(OkeySimpleServerBot.java:404)
at com.noktagames.server.ai.OkeyBotUtil.botMove(OkeyBotUtil.java:321)
at com.noktagames.server.tasks.TaskDiscard.execute(TaskDiscard.java:240)
at com.noktagames.server.tasks.TaskDiscard.run(TaskDiscard.java:56)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"MongoCleaner1811226204" daemon prio=10 tid=0x0000000042537000 nid=0x3be1 waiting on condition [0x00007fc67b3c0000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at com.mongodb.Mongo$DBCleanerThread.run(Mongo.java:681)

"Thread-8" prio=10 tid=0x00000000423cd000 nid=0x3bde in Object.wait() [0x00007fc67b6c9000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68deecae8> (a snaq.util.EventDispatcher)
at java.lang.Object.wait(Object.java:485)
at snaq.util.EventDispatcher.run(EventDispatcher.java:82)
- locked <0x00007fc68deecae8> (a snaq.util.EventDispatcher)

"Thread-7" prio=10 tid=0x00000000423dd000 nid=0x3bdd in Object.wait() [0x00007fc67b7ca000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68deed0b8> (a snaq.util.EventDispatcher)
at java.lang.Object.wait(Object.java:485)
at snaq.util.EventDispatcher.run(EventDispatcher.java:82)
- locked <0x00007fc68deed0b8> (a snaq.util.EventDispatcher)


"Cleaner-thread-0" prio=10 tid=0x00000000424b8800 nid=0x3bdc in Object.wait() [0x00007fc67b8cb000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
- waiting on <0x00007fc68deecdd0> (a snaq.db.ConnectionPool)
at java.lang.Object.wait(Object.java:485)
at snaq.util.ObjectPool$Cleaner.run(ObjectPool.java:1281)
- locked <0x00007fc68deecdd0> (a snaq.db.ConnectionPool)

"Thread-5" daemon prio=10 tid=0x0000000042d9c000 nid=0x3bdb waiting on condition [0x00007fc67ea3a000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.apache.log4j.helpers.FileWatchdog.run(FileWatchdog.java:104)

"pool-2-thread-6" prio=10 tid=0x00007fc680316800 nid=0x3bda waiting on condition [0x00007fc67eb3b000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfadc0> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(Unknown Source)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(Unknown Source)
at java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
at java.util.concurrent.DelayQueue.offer(Unknown Source)
at java.util.concurrent.DelayQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor.schedule(Unknown Source)
at com.smartfoxserver.v2.util.TaskScheduler.schedule(TaskScheduler.java:106)
at com.noktagames.server.ai.OkeyBotUtil.discardBotTile(OkeyBotUtil.java:550)
at com.noktagames.server.tasks.TaskDrawFromSupply.execute(TaskDrawFromSupply.java:120)
at com.noktagames.server.tasks.TaskDrawFromSupply.run(TaskDrawFromSupply.java:39)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"pool-2-thread-5" prio=10 tid=0x00000000423a2800 nid=0x3bd9 waiting on condition [0x00007fc67ec3c000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfacd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"pool-2-thread-4" prio=10 tid=0x0000000042d47000 nid=0x3bd8 waiting on condition [0x00007fc67ed3d000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfacd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"Thread-4" daemon prio=10 tid=0x0000000042122800 nid=0x3bd7 waiting on condition [0x00007fc67ee3e000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.apache.commons.vfs.impl.DefaultFileMonitor.run(DefaultFileMonitor.java:382)
at java.lang.Thread.run(Unknown Source)

"pool-2-thread-3" prio=10 tid=0x00000000420cb800 nid=0x3bd6 waiting on condition [0x00007fc67ef3f000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfacd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)



"Thread-4" daemon prio=10 tid=0x0000000042122800 nid=0x3bd7 waiting on condition [0x00007fc67ee3e000]
java.lang.Thread.State: TIMED_WAITING (sleeping)
at java.lang.Thread.sleep(Native Method)
at org.apache.commons.vfs.impl.DefaultFileMonitor.run(DefaultFileMonitor.java:382)
at java.lang.Thread.run(Unknown Source)

"pool-2-thread-3" prio=10 tid=0x00000000420cb800 nid=0x3bd6 waiting on condition [0x00007fc67ef3f000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfacd8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"pool-2-thread-2" prio=10 tid=0x00000000423a3800 nid=0x3bd5 waiting on condition [0x00007fc67f040000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfadc0> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(Unknown Source)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(Unknown Source)
at java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
at java.util.concurrent.DelayQueue.offer(Unknown Source)
at java.util.concurrent.DelayQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor.delayedExecute(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor.schedule(Unknown Source)
at com.smartfoxserver.v2.util.TaskScheduler.schedule(TaskScheduler.java:106)
at com.noktagames.server.ai.OkeyBotUtil.discardBotTile(OkeyBotUtil.java:550)
at com.noktagames.server.tasks.TaskDrawFromSupply.execute(TaskDrawFromSupply.java:120)
at com.noktagames.server.tasks.TaskDrawFromSupply.run(TaskDrawFromSupply.java:39)
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)



"pool-2-thread-1" prio=10 tid=0x0000000042e20000 nid=0x3bd4 runnable [0x00007fc67f141000]
java.lang.Thread.State: WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68ddfadc0> (a java.util.concurrent.locks.ReentrantLock$NonfairSync)
at java.util.concurrent.locks.LockSupport.park(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.parkAndCheckInterrupt(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquireQueued(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(Unknown Source)
at java.util.concurrent.locks.ReentrantLock$NonfairSync.lock(Unknown Source)
at java.util.concurrent.locks.ReentrantLock.lock(Unknown Source)
at java.util.concurrent.DelayQueue.offer(Unknown Source)
at java.util.concurrent.DelayQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.add(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.runPeriodic(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"pool-3-thread-2" prio=10 tid=0x000000004220b800 nid=0x3bd3 waiting on condition [0x00007fc67f242000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68def7d10> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"org.apache.commons.vfs.cache.SoftRefFilesCache$SoftRefReleaseThread" daemon prio=10 tid=0x0000000042553000 nid=0x3bd2 in Object.wait() [0x00007fc6841d7000]
java.lang.Thread.State: TIMED_WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x00007fc68deaf270> (a java.lang.ref.ReferenceQueue$Lock)
at org.apache.commons.vfs.cache.SoftRefFilesCache$SoftRefReleaseThread.run(SoftRefFilesCache.java:79)


"pool-3-thread-1" prio=10 tid=0x0000000042104800 nid=0x3bd1 waiting on condition [0x00007fc6842d8000]
java.lang.Thread.State: TIMED_WAITING (parking)
at sun.misc.Unsafe.park(Native Method)
- parking to wait for <0x00007fc68def7d10> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
at java.util.concurrent.locks.LockSupport.parkNanos(Unknown Source)
at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(Unknown Source)
at java.util.concurrent.DelayQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.getTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)

"Low Memory Detector" daemon prio=10 tid=0x00007fc680025800 nid=0x3bcf runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE

"CompilerThread1" daemon prio=10 tid=0x00007fc680023000 nid=0x3bce waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE

"CompilerThread0" daemon prio=10 tid=0x00007fc680020000 nid=0x3bcd waiting on condition [0x0000000000000000]
java.lang.Thread.State: RUNNABLE

"Signal Dispatcher" daemon prio=10 tid=0x00007fc68001e000 nid=0x3bcc runnable [0x0000000000000000]
java.lang.Thread.State: RUNNABLE

"Finalizer" daemon prio=10 tid=0x00007fc680001000 nid=0x3bcb in Object.wait() [0x00007fc68533d000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
- locked <0x00007fc68df024c8> (a java.lang.ref.ReferenceQueue$Lock)
at java.lang.ref.ReferenceQueue.remove(Unknown Source)
at java.lang.ref.Finalizer$FinalizerThread.run(Unknown Source)

"Reference Handler" daemon prio=10 tid=0x0000000041f6c000 nid=0x3bca in Object.wait() [0x00007fc68543e000]
java.lang.Thread.State: BLOCKED (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:485)
at java.lang.ref.Reference$ReferenceHandler.run(Unknown Source)
- locked <0x00007fc68ddf01b0> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x0000000041f67800 nid=0x3bc9 runnable


"GC task thread#0 (ParallelGC)" prio=10 tid=0x0000000041f15800 nid=0x3bc1 runnable

"GC task thread#1 (ParallelGC)" prio=10 tid=0x0000000041f17800 nid=0x3bc2 runnable

"GC task thread#2 (ParallelGC)" prio=10 tid=0x0000000041f19800 nid=0x3bc3 runnable

"GC task thread#3 (ParallelGC)" prio=10 tid=0x0000000041f1b000 nid=0x3bc4 runnable

"GC task thread#4 (ParallelGC)" prio=10 tid=0x0000000041f1d000 nid=0x3bc5 runnable

"GC task thread#5 (ParallelGC)" prio=10 tid=0x0000000041f1f000 nid=0x3bc6 runnable

"GC task thread#6 (ParallelGC)" prio=10 tid=0x0000000041f20800 nid=0x3bc7 runnable

"GC task thread#7 (ParallelGC)" prio=10 tid=0x0000000041f22800 nid=0x3bc8 runnable

"VM Periodic Task Thread" prio=10 tid=0x00007fc680038000 nid=0x3bd0 waiting on condition
Attachments
admininterface2.png
(66.55 KiB) Not downloaded yet
admininterface.png
(31 KiB) Not downloaded yet

Return to “SFS2X Questions”

Who is online

Users browsing this forum: No registered users and 126 guests