View Issue Details

IDProjectCategoryView StatusLast Update
0009603New issuesServerpublic2017-10-09 16:17
ReporteremilevirusAssigned To 
PrioritynormalSeverityminorReproducibilitysometimes
Status newResolutionopen 
PlatformDebianOS8OS Version1.5.4
Summary0009603: MySQL can't query after a while
Description

MySQL can't query after a while if MySQL server is external and get some packetloss between MTA and MySQL. dbQuery returns an empty table. dbExec still works though. If the resource containing the SQL connection is restarted, server will freeze and debug will say
[SERVER]: WARNING: Unknown:?? dbPoll is waiting a long time (60 seconds so far). [Query: ]
[SERVER]: WARNING: Unknown:?? dbPoll is waiting a long time (120 seconds so far). [Query: ]
until server is restarted.

Steps To Reproduce
  1. Get an external MySQL server with more than 1 ms ping
  2. Get it DDoS'd
  3. Try to query the server. It will either return an empty table or false.
  4. Try to restart the resource.
  5. Server will freeze.
TagsNo tags attached.

Activities

emilevirus

2017-04-25 01:11

viewer   ~~0025844

Last edited: 2017-04-30 00:52

View 3 revisions

If I try to connect to MySQL with another script: WARNING: Unknown:?? dbPoll is waiting a long time (180 seconds so far). [Query: mysqldbname=gameserver;host=s3.igcrpg.com;port=3306gameserverxxxlog=1;queue=dbname#3Dgameserver#3Bhost#3Ds3.host.com#3Bport#3D3306;tag=script]

Also, when the server is doing that and I shut down the MySQL server, it doesn't say that the connection is lost. dbExec returns true and no debugs come up as if it was still connected, but server ends up crashing after a while.

I've also tried to destroy the connection and server froze.

LilDolla97

2017-04-28 15:06

viewer   ~~0025855

This issue also occurs on my server. Once this happens, there's no going back and i'm required to restart my whole server up again.

arranTuna

2017-04-30 20:09

manager   ~~0025874

You're using the most recent version of MTA server? Because this sounds very familiar to something that was fixed this year.

emilevirus

2017-05-01 21:06

viewer   ~~0025893

Yes, I was the one that reported the bug. I thought it was fixed, but it wasn't. It's happening only when my webserver gets attacked. I've rented two servers: one for MTA and one for MySQL and webserver. It happens when there is packetloss between them.

herudi

2017-10-09 00:45

viewer   ~~0026232

This is still happening on 1.5.5, MYSQL won't start at all after the server froze and restarted.

arranTuna

2017-10-09 11:56

manager   ~~0026233

Your dbPoll has -1 or a really big number set as timeout?

emilevirus

2017-10-09 16:17

viewer   ~~0026234

0, it's a callback. The callback is never called though. Only way to fix this is to restart the server. I've tried destroying the connection element and the server just freezes.

Issue History

Date Modified Username Field Change