VB.net/Mysql - Max pool size reached

Pagina: 1
Acties:
  • 105 views sinds 30-01-2008
  • Reageer

  • NLAnaconda
  • Registratie: Januari 2007
  • Laatst online: 03-07 12:42
Ten eerste excuses voor de wazige titel.

Ik heb een website gemaakt in asp.net
Nu loopt dat lekker, alleen na een bepaalde tijd komt de volgende foutmelding ervoor.

code:
1
"Timeout expired. The timeout period elapsed prior to obtaining a connection from the pool. This may have occured because all pooled connections were in use and max pool size was reached."

Na een beetje heel erg veel googlen kwam ik er achter dat de connecties naar mysql niet goed worden afgesloten. Dit klopt ook, want als ik na een poos kijk bij de connecties, staan er een stuk of 50 op "Sleep" en met een Time van > 1000 seconden en dat wordt na verloop van tijd steeds meer.

Dus ik ben elke pagina nagelopen of de connectie gesloten word, dat doe ik zo...

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Dim strconn As String
strconn = "server=localhost;" _
                      & "uid=Loginnaam;" _
                      & "pwd=password;" _
                      & "database=database;"

Dim MYSQL as string
MySQL = "select * from bla"

Dim MyConn As New MySql.Data.MySqlClient.MySqlConnection(strconn)
Dim ds As New DataSet
Dim Cmd As New MySql.Data.MySqlClient.MySqlDataAdapter(MySQL, MyConn)
Cmd.Fill(ds, "Datasetnaam")

'Code uitvoeren

MyConn.Close()
MyConn.Dispose()


Na mijn weten sluit ik toch zo de connectie?

Dit zijn een paar instellingen in mysql betreffende timeouts
code:
1
2
3
4
Connection timout - Stond uitgevinkt
Interactive timout - Stond uitgevinkt
Read timout - Stond uitgevinkt
Write timeout - Stond uitgevinkt

Deze had ik aangepast in de hoop de connections te sluiten.
code:
1
2
Wait timeout: 9000  - The number of seconds the server waits for activity on a connection before closing it
Max connections - The number of simulatanious clients allowed


Ik had ook een kleine applicatie gemaakt die om de 3 minuten alle openstaande connecties in mysql killed, maar het enigste wat er gebeurde is dat de status "Sleep" veranderde in "Killed". maar de error bleef komen.

Kan iemand mij helpen, of in de goede richting wijzen ?

  • CodeIT
  • Registratie: Juni 2002
  • Laatst online: 17:12

CodeIT

Code IT

Heb je hetzelfde probleem ook als je "connection reset=true" toevoegd aan je connection string?
Gebruik je de laatste versie van de Mysql connector?

edit:
Je kunt het misschien ook eens proberen met "Pooling = 'true/false'" in je connection string

[ Voor 26% gewijzigd door CodeIT op 07-07-2007 00:01 ]


  • NLAnaconda
  • Registratie: Januari 2007
  • Laatst online: 03-07 12:42
ik gebruik versie 5.07 van de connector meen ik.
Ik ga gelijk die reset=true uitproberen

Meer tips zijn welkom :)

  • CodeIT
  • Registratie: Juni 2002
  • Laatst online: 17:12

CodeIT

Code IT

Misschien kun je sowieso de nieuwste connector gebruiken (5.09 meen ik). Misschien was het een bug oid.

  • NLAnaconda
  • Registratie: Januari 2007
  • Laatst online: 03-07 12:42
Je oplossing schijnt zo ver als ik nu kan zien te werken.
Bedankt!

  • Stealth2000
  • Registratie: December 2000
  • Laatst online: 08-01 10:55
Welke ? de reset=true of die connector versie ?

* Stealth2000 liep vandaag toevallig ook tegen deze melding aan :X
Pagina: 1