I am also having same problem , web2py DAL do not close connection and 
fails after too many connection on mysql opened.

I do not have any problem before versions 1.99.1 or 1.99.2 . is that new 
bug introduced after 1.99.4 ?

coz we are happening at 1.99.4 and up.

On Friday, June 22, 2012 10:53:47 PM UTC+6:30, demetrio wrote:
>
>
> Hi everyone,
>
> I have connected WebDAV and SVN auth with a wsgi script. I needed to use a 
> standalone DAL. When you do a dav petition with the navigator it makes a 
> lot of petitions. Well, the thing is that always there is a connection 
> opened (i can see them with PhpMyAdmin)
>
> if self.db: 
>     self.db._adapter.close()
>
> seeing this issue: 
> http://code.google.com/p/web2py/issues/detail?id=731<http://code.google.com/p/web2py/issues/detail?id=731#c4>
>
> I have tried a lot of the lines that i found there
>
> something like:
>
>         if self.db:
>             from gluon.dal import BaseAdapter
>             BaseAdapter.close_all_instances(None)    
>             BaseAdapter.close_all_instances('commit')
>             BaseAdapter.close_all_instances('rollback')
>
> something like:
> if self.db:
>             from gluon.dal import thread as dal_thread            
>             dal_thread.instances.remove(self.db._adapter)
>             self.db._adapter.close()
>
> and even something desesperated like:
> if self.db:
>             from gluon.dal import thread as dal_thread            
>             dal_thread.instances.remove(self.db._adapter)
>             self.db._adapter.close()
>             self.db._adapter.close_all_instances(None)
>             self.db._adapter.close_all_instances('commit')            
>             self.db._adapter.close_all_instances('rollback')
>
>             from gluon.dal import ConnectionPool
>             ConnectionPool.close_all_instances(None)
>             ConnectionPool.close_all_instances('commit')
>             ConnectionPool.close_all_instances('rollback')
>             
>             from gluon.dal import BaseAdapter
>             BaseAdapter.close_all_instances(None)    
>             BaseAdapter.close_all_instances('commit')
>             BaseAdapter.close_all_instances('rollback')
>
> But always, in the best, it leaves at least one connection opened, and i 
> don't know how to deal with it.
>
> I have using web2py 1.99.7 in both development and production environments.
>
> Any ideas? in this moment we are building a python mysql script, but we 
> want to use DAL to make it runnable on any of the web2py/DAL supported db
>
> Thanks in advance
>

-- 



Reply via email to