Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MySQL Connection Cut Off #13

Closed
SXRWahrheit opened this issue Feb 15, 2013 · 47 comments
Closed

MySQL Connection Cut Off #13

SXRWahrheit opened this issue Feb 15, 2013 · 47 comments

Comments

@SXRWahrheit
Copy link

2013-02-15 20:53:22 [SEVERE] com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet successfully received from the server was 215,163 milliseconds ago. The last packet sent successfully to the server was 0 milliseconds ago.
2013-02-15 20:53:22 [SEVERE] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
2013-02-15 20:53:22 [SEVERE] at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
2013-02-15 20:53:22 [SEVERE] at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
2013-02-15 20:53:22 [SEVERE] at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3082)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2968)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3516)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2111)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2273)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.database.databases.SQLDB.loadAccountMoney(SQLDB.java:129)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.database.Database.getAccount(Database.java:44)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.API.getAccount(API.java:71)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.command.commands.BalanceCommand.onCommand(BalanceCommand.java:34)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.FeCommand.onCommand(FeCommand.java:125)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.FeCommand.sendDefaultCommand(FeCommand.java:81)
2013-02-15 20:53:22 [SEVERE] at org.melonbrew.fe.FeCommand.onCommand(FeCommand.java:86)
2013-02-15 20:53:22 [SEVERE] at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
2013-02-15 20:53:22 [SEVERE] at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:186)
2013-02-15 20:53:22 [SEVERE] at org.bukkit.craftbukkit.v1_4_R1.CraftServer.dispatchCommand(CraftServer.java:514)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.PlayerConnection.handleCommand(PlayerConnection.java:980)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.PlayerConnection.chat(PlayerConnection.java:898)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.PlayerConnection.a(PlayerConnection.java:853)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.Packet3Chat.handle(Packet3Chat.java:44)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.NetworkManager.b(NetworkManager.java:290)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.PlayerConnection.d(PlayerConnection.java:113)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.ServerConnection.b(SourceFile:39)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.DedicatedServerConnection.b(SourceFile:30)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:598)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427)
2013-02-15 20:53:22 [SEVERE] at net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
2013-02-15 20:53:22 [SEVERE] Caused by: java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2529)
2013-02-15 20:53:22 [SEVERE] at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2979)
2013-02-15 20:53:22 [SEVERE] ... 30 more

I'm thinking that the plugin is trying to keep a connection open, and most hosts kill them after 60 seconds which is causing errors like players not receiving money for completed quests etc. It says that I don't have an account if that error is generated, but doing the command again shows that I do.

@niccholaspage
Copy link
Owner

What version of Fe is this?

@SXRWahrheit
Copy link
Author

0.6, as is available on DevBukkit.

On 2/15/2013 1:37 PM, Nicholas wrote:

What version of Fe is this?


Reply to this email directly or view it on GitHub
#13 (comment).

@niccholaspage
Copy link
Owner

Hmm. Fe 0.6 should automatically reopen any closed SQL connection. Can you please test the latest development build to see if this problem still occurs?

@SXRWahrheit
Copy link
Author

Sure thing, link?

On 2/15/2013 1:42 PM, Nicholas wrote:

Hmm. Fe 0.6 should automatically reopen any closed SQL connection. Can
you please test the latest development build to see if this problem
still occurs?


Reply to this email directly or view it on GitHub
#13 (comment).

@niccholaspage
Copy link
Owner

@SXRWahrheit
Copy link
Author

Which version of Bukkit is this build dependent on? I'm using the latest
recommended.

2013-02-15 22:29:20 [SEVERE] Could not pass event PluginEnableEvent to
Fe v0.7-SNAPSHOT
org.bukkit.event.EventException
at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
at
org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at
org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:35)
at
org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at
org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
at
org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:464)
at
org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:381)
at
org.bukkit.craftbukkit.v1_4_R1.CraftServer.loadPlugin(CraftServer.java:282)
at
org.bukkit.craftbukkit.v1_4_R1.CraftServer.enablePlugins(CraftServer.java:264)
at
net.minecraft.server.v1_4_R1.MinecraftServer.j(MinecraftServer.java:321)
at
net.minecraft.server.v1_4_R1.MinecraftServer.e(MinecraftServer.java:300)
at
net.minecraft.server.v1_4_R1.MinecraftServer.a(MinecraftServer.java:259)
at
net.minecraft.server.v1_4_R1.DedicatedServer.init(DedicatedServer.java:149)
at
net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:399)
at
net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
Caused by: java.lang.ClassCastException:
org.melonbrew.fe.loaders.FeBukkitLoader cannot be cast to
org.melonbrew.fe.Fe
at
org.melonbrew.fe.Economy_Fe$EconomyServerListener.onPluginEnable(Economy_Fe.java:53)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
... 14 more

On 2/15/2013 1:43 PM, Nicholas wrote:

http://s2.meloncraft.com:8080/job/Fe/


Reply to this email directly or view it on GitHub
#13 (comment).

@niccholaspage
Copy link
Owner

Sorry, there was an issue in the code. Can you download the latest dev build and test it now? The issue should be fixed.

@SXRWahrheit
Copy link
Author

2013-02-16 00:14:27 [SEVERE]
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications
link failure

The last packet successfully received from the server was 542,645
milliseconds ago. The last packet sent successfully to the server was
36 milliseconds ago.
2013-02-16 00:14:27 [SEVERE] at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
2013-02-16 00:14:27 [SEVERE] at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
2013-02-16 00:14:27 [SEVERE] at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
2013-02-16 00:14:27 [SEVERE] at
java.lang.reflect.Constructor.newInstance(Constructor.java:525)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3082)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2968)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3516)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2111)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2273)
2013-02-16 00:14:27 [SEVERE] at
com.niccholaspage.nSQL.query.SelectQuery.execute(SelectQuery.java:55)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.database.databases.SQLDB.loadAccountMoney(SQLDB.java:157)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.database.Database.getAccount(Database.java:45)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.API.getAccount(API.java:76)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.command.commands.BalanceCommand.onCommand(BalanceCommand.java:35)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.FeCommand.onCommand(FeCommand.java:126)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.FeCommand.sendDefaultCommand(FeCommand.java:82)
2013-02-16 00:14:27 [SEVERE] at
org.melonbrew.fe.FeCommand.onCommand(FeCommand.java:87)
2013-02-16 00:14:27 [SEVERE] at
com.niccholaspage.Metro.base.command.BukkitCommandExecutor.onCommand(BukkitCommandExecutor.java:23)
2013-02-16 00:14:27 [SEVERE] at
org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
2013-02-16 00:14:27 [SEVERE] at
org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:186)
2013-02-16 00:14:27 [SEVERE] at
org.bukkit.craftbukkit.v1_4_R1.CraftServer.dispatchCommand(CraftServer.java:514)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.PlayerConnection.handleCommand(PlayerConnection.java:980)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.PlayerConnection.chat(PlayerConnection.java:898)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.PlayerConnection.a(PlayerConnection.java:853)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.Packet3Chat.handle(Packet3Chat.java:44)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.NetworkManager.b(NetworkManager.java:290)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.PlayerConnection.d(PlayerConnection.java:113)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.ServerConnection.b(SourceFile:39)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.DedicatedServerConnection.b(SourceFile:30)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:598)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427)
2013-02-16 00:14:27 [SEVERE] at
net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
2013-02-16 00:14:27 [SEVERE] Caused by: java.io.EOFException: Can not
read response from server. Expected to read 4 bytes, read 0 bytes before
connection was unexpectedly lost.
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2529)
2013-02-16 00:14:27 [SEVERE] at
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2979)
2013-02-16 00:14:27 [SEVERE] ... 32 more

2013-02-16 00:14:27 [SEVERE] null
org.bukkit.command.CommandException: Unhandled exception executing
command 'money' in plugin Fe v0.7-SNAPSHOT
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46)
at
org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:186)
at
org.bukkit.craftbukkit.v1_4_R1.CraftServer.dispatchCommand(CraftServer.java:514)
at
net.minecraft.server.v1_4_R1.PlayerConnection.handleCommand(PlayerConnection.java:980)
at
net.minecraft.server.v1_4_R1.PlayerConnection.chat(PlayerConnection.java:898)
at
net.minecraft.server.v1_4_R1.PlayerConnection.a(PlayerConnection.java:853)
at
net.minecraft.server.v1_4_R1.Packet3Chat.handle(Packet3Chat.java:44)
at
net.minecraft.server.v1_4_R1.NetworkManager.b(NetworkManager.java:290)
at
net.minecraft.server.v1_4_R1.PlayerConnection.d(PlayerConnection.java:113)
at net.minecraft.server.v1_4_R1.ServerConnection.b(SourceFile:39)
at
net.minecraft.server.v1_4_R1.DedicatedServerConnection.b(SourceFile:30)
at
net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:598)
at
net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224)
at
net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494)
at
net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427)
at
net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
Caused by: java.lang.NullPointerException
at
org.melonbrew.fe.database.databases.SQLDB.loadAccountMoney(SQLDB.java:159)
at org.melonbrew.fe.database.Database.getAccount(Database.java:45)
at org.melonbrew.fe.API.getAccount(API.java:76)
at
org.melonbrew.fe.command.commands.BalanceCommand.onCommand(BalanceCommand.java:35)
at org.melonbrew.fe.FeCommand.onCommand(FeCommand.java:126)
at org.melonbrew.fe.FeCommand.sendDefaultCommand(FeCommand.java:82)
at org.melonbrew.fe.FeCommand.onCommand(FeCommand.java:87)
at
com.niccholaspage.Metro.base.command.BukkitCommandExecutor.onCommand(BukkitCommandExecutor.java:23)
at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
... 15 more

On 2/15/2013 2:45 PM, Nicholas wrote:

Sorry, there was an issue in the code. Can you download the latest dev
build and test it now? The issue should be fixed.


Reply to this email directly or view it on GitHub
#13 (comment).

@SXRWahrheit
Copy link
Author

2013-02-18 23:24:46 [SEVERE] Caused by: java.io.EOFException: Can not
read response from server. Expected to read 4 bytes, read 0 bytes before
connection was unexpectedly lost.
2013-02-18 23:24:46 [SEVERE] at
com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:2529)
2013-02-18 23:24:46 [SEVERE] at
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2979)
2013-02-18 23:24:46 [SEVERE] ... 32 more
2013-02-18 23:24:46 [SEVERE] Could not pass event PlayerLoginEvent to Fe
v0.7-SNAPSHOT
org.bukkit.event.EventException
at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
at
org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at
org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:35)
at
org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:477)
at
org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:462)
at
net.minecraft.server.v1_4_R1.PlayerList.attemptLogin(PlayerList.java:278)
at
net.minecraft.server.v1_4_R1.PendingConnection.d(PendingConnection.java:121)
at
net.minecraft.server.v1_4_R1.PendingConnection.c(PendingConnection.java:45)
at
net.minecraft.server.v1_4_R1.DedicatedServerConnectionThread.a(DedicatedServerConnectionThread.java:44)
at
net.minecraft.server.v1_4_R1.DedicatedServerConnection.b(SourceFile:29)
at
net.minecraft.server.v1_4_R1.MinecraftServer.r(MinecraftServer.java:598)
at
net.minecraft.server.v1_4_R1.DedicatedServer.r(DedicatedServer.java:224)
at
net.minecraft.server.v1_4_R1.MinecraftServer.q(MinecraftServer.java:494)
at
net.minecraft.server.v1_4_R1.MinecraftServer.run(MinecraftServer.java:427)
at
net.minecraft.server.v1_4_R1.ThreadServerApplication.run(SourceFile:849)
Caused by: java.lang.NullPointerException
at
org.melonbrew.fe.database.databases.SQLDB.loadAccountMoney(SQLDB.java:159)
at org.melonbrew.fe.database.Database.getAccount(Database.java:45)
at
org.melonbrew.fe.database.Database.createAccount(Database.java:59)
at org.melonbrew.fe.API.createAccount(API.java:68)
at
org.melonbrew.fe.listeners.FeBukkitPlayerListener.onPlayerLogin(FeBukkitPlayerListener.java:26)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at
org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)

Tons of stuff like this, lag on join.

On 2/15/2013 2:45 PM, Nicholas wrote:

Sorry, there was an issue in the code. Can you download the latest dev
build and test it now? The issue should be fixed.


Reply to this email directly or view it on GitHub
#13 (comment).

@niccholaspage
Copy link
Owner

Hmm. I'll be looking into this soon. It should of been fixed but I'll check it out again.

@SXRWahrheit
Copy link
Author

It's interrupting MobArena since it's dependent on fees and prizes - fix would be awesome <3

I'm on IRC if you want to test with me, and my server's IP is mc.summaxr.com.

@SXRWahrheit
Copy link
Author

Any progress? Let me know if I can help. Need this fixed. :(

@SXRWahrheit
Copy link
Author

Still waiting on this, need proper economy stuff not interrupting other plugins :(

@niccholaspage
Copy link
Owner

Sorry, I've been pretty busy. I'll try to look into it soon.

@SXRWahrheit
Copy link
Author

Good progress yesterday, hop on mumble or highlight me on IRC when you'd like to test more. :)

@SXRWahrheit
Copy link
Author

You around tonight? Would love to get this fixed :)

@SXRWahrheit
Copy link
Author

Any chance we can fix this today? Would be awesome to have it working for the week.

@SXRWahrheit
Copy link
Author

Still hoping for a fix :(

@SXRWahrheit
Copy link
Author

Bump :(

@niccholaspage
Copy link
Owner

Sorry, I've been busy. I'm still looking into it but it's a hard issue to fix.

@SXRWahrheit
Copy link
Author

I'm guessing a couple hours at most on IRC talking with other devs will get it sorted :)

@SXRWahrheit
Copy link
Author

Is there anything I can do as far as providing connections goes to help get this sorted faster? It's limiting my ability to implement a lot of new features.

@SXRWahrheit
Copy link
Author

Any progress?

@niccholaspage
Copy link
Owner

I'm going to start writing for Fe again. I've really been trying to fix this but it's pretty hard to find the issue. I've been looking for a few weeks now.

@SXRWahrheit
Copy link
Author

Like I've said before, you should pop on IRC and use it frequently - people are often very willing to help and while I don't know java myself there are plenty who do and can give advice if you're stuck on certain aspects. :)

@niccholaspage
Copy link
Owner

I got on IRC yesterday, didn't get much help. I'll be checking again tomorrow.

@SXRWahrheit
Copy link
Author

Poke me next time, I was in the Bahamas. I'll help you ask the right questions. :)

@SXRWahrheit
Copy link
Author

Have you got Skype? We could chat through there.

@SXRWahrheit
Copy link
Author

Are you planning on fixing this ever?

@SXRWahrheit
Copy link
Author

You may find this of use:

https://github.com/krinsdeath/killsuite/blob/master/src/main/java/net/krinsoft/killsuite/databases/MySQLDatabase.java#L217

Krinsdeath is usually on esper and probably willing to answer any questions you have.

@Puremin0rez
Copy link

This really needs to be fixed, like ASAP.

@SXRWahrheit
Copy link
Author

I could not agree more.

@Puremin0rez
Copy link

@SXRWahrheit

What's the worst that this error causes? I've seen it a few times in console, but the plugin still appears to work fine afterwards. Just checking before moving to another economy plugin.

@SXRWahrheit
Copy link
Author

If the connection has been dropped, the next attempt to use anything with MySQL fails. Allow me to present a few cases:

MobArena users are fighting a boss. It takes a while and is quite difficult, so there's a great reward of 200 gold! Oh no, the MySQL connection has dropped and that gold is never assigned. Not only that, but the arena won't proceed because it can't pay out.
A user completes a multi-stage quest to kill hundreds of monsters. The quest is marked as complete but the reward is not received so the user cannot be paid.

Stuff like that. You can sort of account for this by spamming /money whenever you know you're gonna get paid soon or before you turn in a quest but that's ridiculous. At the very least you could just store pending transactions to .sql or something...

@Puremin0rez
Copy link

@SXRWahrheit

Gotcha. To be honest, not sure why it's taken over 3 months to fix something like this. It's seems pretty trivial, although i personally have never dabbled in MySQL. I mean, isn't it as simple as doing some sort of keep alive ping to ensure the DB stays connected?

@niccholaspage

Cant you just look at another plugins source to see how they do MySQL? I'm sure there are plenty of good examples that could be used - considering Fe is the only plugin I've ever had an issue with relating to this error.

As much as I hate this error, Fe Economy is still the only simplistic and decent economy plugin there is. Would be a shame to have to change.

@SXRWahrheit
Copy link
Author

Yes. What he said.

@Puremin0rez
Copy link

public boolean checkConnection(){

If you can't find a legitimate fix, couldn't you just call "checkConnection()" every say, 30-60 seconds and verify the connection is always up? It appears the method works, but the problem is that after it times out for so long someone needs to issue the command just to have it fail then work again until it times out.

@niccholaspage
Copy link
Owner

checkConnection() is called when a query needs to be executed. It will open the database if closed. The issue only happens once and then the database opens up - keeping the database alive wouldn't help as the host Wahrheit is using closes the database after a minute.

@SXRWahrheit
Copy link
Author

As do most hosts.

@SXRWahrheit
Copy link
Author

Sorry, most shared hosts - which is sufficient for most webhosting and thus becomes most hosts.

@Puremin0rez
Copy link

Well I'm not even using a "host" - I am running a clean install of MySQL on a Dedicated Server running CentOS.

None of my other plugins have this disconnection issue, so its possible the defaults kill the connection after 60 seconds but why would this plugin be the only one effected by it? It seems like the other plugins handle it gracefully as I've never seen any MySQL errors before this.

@jjacobson
Copy link

Any updates on this problem?

@SXRWahrheit
Copy link
Author

lol

@Puremin0rez
Copy link

^ I think that's the best explanation.

Really though, I don't get it as much anymore since my server is quite popular and it never usually gets a chance to die, but over night, like normal, connection dies and first transaction in the morning fails.

@SXRWahrheit
Copy link
Author

If only I were so lucky. We get activity in spurts and users freak out when they see the internal server error.

@niccholaspage
Copy link
Owner

This hopefully has been fixed by this commit:
3c5affb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants