Re: FATAL: sorry, too many clients already
Michael Palmer <m_palmer45-FFYn/[email protected]>
| Newsgroups | gmane.comp.python.webware |
|---|---|
| Message-ID | <[email protected]> |
Explicitly closing connections would be a very good addition to DBUtils, I think. I did not inspect mysqld for dangling connections; I just added explicit closing and it worked. This is why I said 'I suspect' that connections survive inside the db server; I'm not sure of it. atexit is indeed not called when my appserver restarts. I'm not sure whether there is a clean general way to ensure finalization of the connection pool; may be just add a shutdown hook to DBUtils and leave it up to the user to ensure it is called? When using webkit, optionally pass a reference to the appserver to DBUtils and let DBUtils hook into the appserver's shutdown method? Best, Michael Christoph Zwerschke <[email protected]> wrote: Michael Palmer wrote: > If I didn't overlook something, DBUtils doesn't close connections when the > Python process exits. Persistent connections are not closed, only pooled connections are closed. DBUtils relies on the connections being automatically closed anyway by the dbapi module when Python exits and the connection objects are deleted. Maybe this is a problem of MySQLdb specifically or the GC does not work as expected on exit? What happens if you simply open a MySQLdb connection with Python, do not close it and exit Python, is it still there? Anyway, I should probably add a destructor to DBUtils SteadyConnections and also since one should not rely on GC, something to explicitely close them on exit. > I use a homegrown scheme for connection persistence now - it > explicitly closes all persistent connections when Python exits. How are you doing this? Are you using an atexit exit handler? But that will not be called when Python is killed by a signal which will be most likely the case when you use shutdown scripts. -- Christoph ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Webware-discuss mailing list Webware-discuss-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/webware-discuss __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ Webware-discuss mailing list Webware-discuss-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org https://lists.sourceforge.net/lists/listinfo/webware-discuss