I'm going to try to closely monitor these things and try to get users to report issues more promptly. The last time this happened I do see an error in the logs. An exception was thrown due to too many connections on our mysql server (we've been getting that a lot lately, don't know why as we have plenty) and things went into a dizzying tailspin from there. This was during a room creation phase.
Here's the basic errors just for documentation purposes:
Code:
Room created: FTW-Game:fries4guys-205786 Room ID: 1:921 with user fries4guys
Unable to connect to database.com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: Too many connections
22:35:52,536 [pool-1-thread-1089] ERROR com.electrotank.electroserver4.entities.BaseBridge - Error occured calling extension code - Extension: ForTheWin - Name: Manager - Handle: TheManager
java.lang.NullPointerException
22:35:52,598 [pool-1-thread-1089] ERROR TransactionTiming - Exception processing message com.electrotank.electroserver4.messages.client.request.ClientInvokePluginRequestMessage@1628d8
java.lang.NullPointerException
22:35:52,598 [pool-1-thread-1089] ERROR com.electrotank.electroserver4.servers.registry.GatewayIoHandler - Exception processing message com.electrotank.electroserver4.messages.client.request.ClientInvokePluginRequestMessage@1628d8
com.electrotank.electroserver4.servers.registry.MessagingException: Exception processing message com.electrotank.electroserver4.messages.client.request.ClientInvokePluginRequestMessage@1628d8
22:35:52,601 [pool-1-thread-1088] ERROR com.electrotank.electroserver4.entities.BaseBridge - Error occured calling extension code - Extension: ForTheWin - Name: Game - Handle: Game
java.lang.NullPointerException
22:35:52,614 [pool-1-thread-1088] ERROR TransactionTiming - Exception processing message com.electrotank.electroserver4.messages.internal.InternalClientDisconnectedMessage@158b8b1
java.lang.NullPointerException
22:35:52,615 [pool-1-thread-1088] ERROR com.electrotank.electroserver4.servers.registry.GatewayIoHandler - Exception processing message com.electrotank.electroserver4.messages.internal.InternalClientDisconnectedMessage@158b8b1
com.electrotank.electroserver4.servers.registry.MessagingException: Exception processing message com.electrotank.electroserver4.messages.internal.InternalClientDisconnectedMessage@158b8b1
For now I'll trap the exception and just not create the game if it happens. It does look like my userexit routine is thread safe, but, of course, threads are the most annoying things ever, so who knows for sure.