Page 1 of 1

"too many connections" is back

Posted: Tue Jul 05, 2011 7:42 pm
by fectin
Warning: mysql_connect() [function.mysql-connect]: User niftymes_tgdmbpr already has more than 'max_user_connections' active connections in /home2/niftymes/public_html/tgdmb/db/mysql4.php on line 48
phpBB : Critical Error
I got this a couple minutes ago. I know there was a separate thread on it before, but I couldn't find it.

Edit: And now I'm getting it a whole bunch. Like every other link. Am I the only one?

Posted: Tue Jul 05, 2011 7:53 pm
by tzor
YOU ARE NOT ALONE!

Although I'm not getting it at this moment.

I suspect we are being visited by bots on a frequent basis.

After I posted I went to the main page

In total there are 35 users online :: 8 Registered, 0 Hidden and 27 Guests

Posted: Tue Jul 05, 2011 8:00 pm
by Meikle641
Just got that error myself.

Re: "too many connections" is back

Posted: Tue Jul 05, 2011 9:28 pm
by Zherog
Thanks for the heads up.
fectin wrote:I know there was a separate thread on it before, but I couldn't find it.
It didn't have its own thread; the previous discussions are in the "report bugs" thread. Probably better to have it out here on its own, though.
tzor wrote:In total there are 35 users online :: 8 Registered, 0 Hidden and 27 Guests
That's certainly not excessive...

Re: "too many connections" is back

Posted: Wed Jul 06, 2011 2:24 pm
by tzor
Zherog wrote:That's certainly not excessive...
No it's not, but if they are bots, they may be using resources faster than normal humans merely because they are scanning a page in milliseconds while normal humans often take a minute looking at the results of a web page query. Thus if 30 humans were on line it would be rare for two of them to hit the database at the same time, but or 30 bots, at any given moment several may be hitting the database.

Just my wild speculation, since i don't know the max database connection number for this system.

Posted: Wed Jul 06, 2011 3:14 pm
by Zherog
I did a bit more digging last night, and for the first time my searching turned up an answer that points to a bug in the software rather than a server-side setting. If the source I found is correct, phpbb has a bug that makes it so not all db connections are closed after they're used. Eventually, the open connection will time out and release itself, but if enough of them hang at one time (such as when a crawler is on the site), then we get the error.

The source I found also had a very simple fix that can be added to any page. It goes out, finds SQL connections older than some specified time, and kills them. I'm going to find some time this week to make those changes, and then we'll see if the issue goes away.

Posted: Thu Jul 14, 2011 3:58 pm
by Parthenon
If you've already made those changes then it hasn't helped- I just got another too many connections error twice in a row about a minute ago.

Posted: Thu Jul 14, 2011 6:20 pm
by Zherog
I haven't yet made the changes. Been losing a fight with the scheduling monster. Thanks for the update, though.

edit: also, I deleted one of your double posts... just so nobody wonders where it went.

Posted: Wed Jul 27, 2011 2:18 pm
by Zherog
note to self: get off your lazy ass and fix the error already, you lazy fucking bastard...

Posted: Fri Jul 29, 2011 9:22 pm
by fectin
Would it work t write a cronjob that kills all old connections every 15 min?

Posted: Sun Jul 31, 2011 4:03 pm
by Zherog
I've just now installed a fix. While I can't test it - because I don't have the capacity to reproduce the error - everything seems to be functioning normal. Essentially, every time anybody loads the index page it'll go out and find any SQL connections that are more than 500 seconds old and kill them. I can adjust that number up or down as needed. My hunch is I'll need to reduce it once or twice, but I'd rather start out there.

If anybody has any issues loading pages today (Sunday July 31st) please send me a PM so that I'll get an email notification. I can revert back to the previous code if necessary. If anybody encounters the "too many connections" error going forward, please post the info in this thread, and I'll look into getting the number of seconds reduced.

Sorry for the delay getting it fixed; hopefully this wraps up the issue.

*

Fectin -- your idea would seem to work to me, except I don't know if I have access to crontab on the server or not. The solution I have, instead, just looks for the old connections whenever that page loads and kills them. Same effect, different way of getting to it.

Posted: Mon Aug 01, 2011 1:18 pm
by Zherog
Alright, so no PMs and no posts since I made the changes likely means I didn't fuck anything up. Yay me!

Hopefully this issue is behind us now. Of course, if anybody encounters it then certainly go ahead and post here, and I'll see if I can find anything else on the error.

Posted: Mon Aug 08, 2011 2:50 pm
by Zherog
Well, so much for it being fixed... I just got the message. At some point this week I'll try adding the code to a page that gets loaded more often, like the Forum or Thread page, rather than just the index.

Posted: Fri Sep 16, 2011 1:50 pm
by fectin
It's back again. I've been getting rather a lot of them.

Posted: Fri Sep 23, 2011 6:50 pm
by Prak
today, 27 minutes ago.
Warning: mysql_connect() [function.mysql-connect]: User niftymes_tgdmbpr already has more than 'max_user_connections' active connections in /home2/niftymes/public_html/tgdmb/db/mysql4.php on line 48
phpBB : Critical Error

Could not connect to the database

Posted: Mon Oct 10, 2011 4:57 pm
by Cynic
It's been appearing on and off today.

Posted: Sat Oct 15, 2011 6:26 am
by shadzar
massive too many connections and 500 server errors, within the past 2 hours.