SQL - Communications link failure #45


  • Defect
  • Waiting
Open
Assigned to lorenzo_p
  • _ForgeUser10435673 created this issue Nov 25, 2013

    The plugin loses connection from my SQL server for no reason, it leaves the error message:

    2013-09-12 14:33:12 [SEVERE] [WebAuction+] SQL Error!
    2013-09-12 14:33:12 [SEVERE] com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
    The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
    2013-09-12 14:33:13 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    2013-09-12 14:33:13 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    2013-09-12 14:33:13 [SEVERE]     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    2013-09-12 14:33:13 [SEVERE]     at java.lang.reflect.Constructor.newInstance(Unknown Source)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1116)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:343)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2334)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2371)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2163)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794)
    2013-09-12 14:33:13 [SEVERE]     at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
    2013-09-12 14:33:13 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    2013-09-12 14:33:13 [SEVERE]     at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    2013-09-12 14:33:13 [SEVERE]     at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    2013-09-12 14:33:14 [SEVERE]     at java.lang.reflect.Constructor.newInstance(Unknown Source)
    2013-09-12 14:33:14 [SEVERE]     at com.mysql.jdbc.Util.handleNewInstance(Util.java:407)
    2013-09-12 14:33:14 [SEVERE]     at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378)
    2013-09-12 14:33:14 [SEVERE]     at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305)
    2013-09-12 14:33:14 [SEVERE]     at java.sql.DriverManager.getConnection(Unknown Source)
    2013-09-12 14:33:14 [SEVERE]     at java.sql.DriverManager.getConnection(Unknown Source)
    2013-09-12 14:33:14 [SEVERE]     at me.lorenzop.webauctionplus.mysql.MySQLConnPool.getConnection(MySQLConnPool.java:63)
    2013-09-12 14:33:14 [SEVERE]     at me.lorenzop.webauctionplus.dao.waStats.doUpdate(waStats.java:37)
    2013-09-12 14:33:14 [SEVERE]     at me.lorenzop.webauctionplus.dao.waStats.Update(waStats.java:27)
    2013-09-12 14:33:14 [SEVERE]     at me.lorenzop.webauctionplus.dao.waStats.getMaxAuctionID(waStats.java:101)
    2013-09-12 14:33:14 [SEVERE]     at me.lorenzop.webauctionplus.tasks.ShoutSignTask.run(ShoutSignTask.java:30)
    2013-09-12 14:33:14 [SEVERE]     at org.bukkit.craftbukkit.v1_4_R1.scheduler.CraftTask.run(CraftTask.java:53)
    2013-09-12 14:33:14 [SEVERE]     at org.bukkit.craftbukkit.v1_4_R1.scheduler.CraftScheduler.mainThreadHeartbeat(CraftScheduler.java:344)
    2013-09-12 14:33:14 [SEVERE]     at net.minecraft.server.MinecraftServer.r(MinecraftServer.java:788)
    2013-09-12 14:33:14 [SEVERE]     at ho.r(DedicatedServer.java:309)
    2013-09-12 14:33:14 [SEVERE]     at net.minecraft.server.MinecraftServer.q(MinecraftServer.java:746)
    2013-09-12 14:33:14 [SEVERE]     at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:633)
    2013-09-12 14:33:15 [SEVERE]     at fy.run(ThreadMinecraftServer.java:16)
    2013-09-12 14:33:15 [SEVERE] Caused by: java.net.ConnectException: Connection timed out: connect
    2013-09-12 14:33:15 [SEVERE]     at java.net.TwoStacksPlainSocketImpl.socketConnect(Native Method)
    2013-09-12 14:33:15 [SEVERE]     at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.PlainSocketImpl.connect(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.SocksSocketImpl.connect(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.Socket.connect(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.Socket.connect(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.Socket.<init>(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at java.net.Socket.<init>(Unknown Source)
    2013-09-12 14:33:15 [SEVERE]     at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:254)
    2013-09-12 14:33:15 [SEVERE]     at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:292)
    2013-09-12 14:33:15 [SEVERE]     ... 26 more

    This happens what seems randomly and It crashes all the players on the server, sometimes the server do not work for an hour.
    But after a while it's up running again.
    My config is:

    MySQL:
      Host: 72.29.66.179
      Username: gavlegub_teklite
      Password: *******
      Port: 3306
      Database: gavlegub_gavgbay
      TablePrefix: WA_
      ConnectionPoolSizeWarn: 5
      ConnectionPoolSizeHard: 10
    Misc:
      ReportSales: true
      UseOriginalRecentSigns: true
      SignClickDelay: 500
      UnsafeEnchantments: false
      AnnounceGlobally: false
    Tasks:
      SaleAlertSeconds: 20
      ShoutSignUpdateSeconds: 20
      RecentSignUpdateSeconds: 60
      AnnouncerMinutes: 60
    SignLink:
      Enabled: false
      NumberOfLatestAuctionsToTrack: 10
    Development:
      UseMultithreads: false
      Debug: false
    Announcer:
      Enabled: false
      Prefix: '&c[Info] '
      Random: false
    Announcements:
    - This server is running WebAuctionPlus!

    I also changed the settings in the database to Value: Tekkit.
    Is the bug on my side, or is it my SQL host?

  • _ForgeUser10435673 added the tags New Defect Nov 25, 2013
  • lorenzo_p posted a comment Jan 8, 2014

    hm.. this is most likely a problem somewhere between the minecraft server and the mysql server, causing it to drop the connections. if possible, it's best to run mysql on the same server as the minecraft server, to avoid connection problems, and to keep any potential lag as low as possible. the website on the other hand, doesn't matter if it takes 100ms longer to run a query, you wont notice it. in game, you're much more likely to notice lag.

  • lorenzo_p posted a comment Jan 8, 2014

    I have written a much better database library that automatically tries reconnecting to the database, without hammering the server with attempts. I may try to crowbar it into the current version of web auction to improve things, but it does still need testing.

  • lorenzo_p removed a tag New Jan 8, 2014
  • lorenzo_p added a tag Waiting Jan 8, 2014

To post a comment, please login or register a new account.