Closed Bug 1010433 Opened 10 years ago Closed 10 years ago

bouncer db too many connections

Categories

(Data & BI Services Team :: DB: MySQL, task)

x86
macOS
task
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: scabral, Assigned: bjohnson)

Details

(Whiteboard: [kanban:https://kanbanize.com/ctrl_board/4/366] )

11:55 < gozer> Hrm, seeing something annyoign with bouncer ATM, [Wed May 14 11:50:45 2014] [error] [client 10.8.81.219] SQLSTATE[08004] [1040] Too many connections 11:56 < gozer> can someone have a look at the Bouncer DB and tell me about connection limits / counts
2:06 < gozer> sheeri: there were 2-3 bouncer web heads disabled in Zeus for no reason, so we (I) turned them back on after verifying they were healthy 12:06 < gozer> sheeri: so that must have caused an increase in client connections 12:06 <@sheeri> ah 12:06 < gozer> sheeri: seeing that Tuxedo (the app) keeps one connection open per httpd child 12:06 <@sheeri> OK 12:06 < gozer> at MaxClient of 200, 10 web nodes 12:06 < gozer> that's 2,000 connections theoritical maximum 12:06 <@sheeri> so we should have at least 2000 12:06 <@sheeri> well, plus a few admin ones 12:06 < gozer> sheeri: yeah, that's an oversight on our part there 12:06 <@sheeri> so something like 2005 or so 12:07 <@sheeri> let's call it 2100 for an even #?
Sheeri-Cabral:nodes scabral$ svn commit -m "changing max_connections to 2100 for bouncer clusters" Sending databases.pp Transmitting file data . Committed revision 87436.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Re-opening this. This did not solve the issue, and it appears there's more at root here which may require some work on the app end. In addition to already maxing out the 2100 connections on bouncer1 (what should only be the write master), I seem to see no load on bouncer 2-4 (read slaves). After checking, max_used_connections on each of those has only reached 6 and they've done no work. It appears that bouncer is not utilizing its read slaves and is doing 100% of it's load on the master. Let's look into why bouncer isn't using the read slaves provided and see if we can correct that before moving forward. I suspect simply using the read slaves will solve this. Adding gozer for needinfo.
Assignee: server-ops-database → bjohnson
Status: RESOLVED → REOPENED
Flags: needinfo?(gozer)
Resolution: FIXED → ---
Whiteboard: [kanban:https://kanbanize.com/ctrl_board/4/366]
Yes, this is a known Bouncer problem, see bug 1014990
Flags: needinfo?(gozer)
FYI this should be a whole lot better with memcache functional again... IIRC that is usable for a whole bunch of connections. IIRC that's one reason we never really bothered with using the slaves... between Zeus caching and memcache, there's not supposed to be very much database for it.
So then we probably can kill some of the slaves - We only need 1 slave (for failover) if it's not using slaves. Currently we have 3 slaves. Can we spin down 2 slaves? (they're vm's so we could always re-add them if necessary).
(In reply to Jake Maul [:jakem] from comment #5) > FYI this should be a whole lot better with memcache functional again... IIRC > that is usable for a whole bunch of connections. IIRC that's one reason we > never really bothered with using the slaves... between Zeus caching and > memcache, there's not supposed to be very much database for it. Current status is that bouncer is now correctly using the slave pool, and there is another bug open to re-enable the memcache support in bouncer.
Oh! Even better!
Status: REOPENED → RESOLVED
Closed: 10 years ago10 years ago
Resolution: --- → FIXED
Product: mozilla.org → Data & BI Services Team
You need to log in before you can comment on or make changes to this bug.