OK, I've just tried the patch.

I've checked out SA from svn at revision 1873, applied the patch, and tested 
the whole, using several cherrypy threads (thread_pool = 10).

This did not resolved the problem for me, as I get the error you described 
("This connection still has X open cursors"). Here's the traceback:


Traceback (most recent call last):
  
File 
"/usr/lib/python2.4/site-packages/CherryPy-2.2.1-py2.4.egg/cherrypy/_cphttptools.py",
 
line 110, in _run
    applyFilters('before_finalize')
  
File 
"/usr/lib/python2.4/site-packages/CherryPy-2.2.1-py2.4.egg/cherrypy/filters/__init__.py",
 
line 151, in applyFilters
    method()
  File "/home/slelong/Documents/Projects/dsf/tucos/filters/audit.py", line 94, 
in before_finalize
    self.feed_audit()
  File "/home/slelong/Documents/Projects/dsf/tucos/filters/audit.py", line 82, 
in feed_audit
    aa.flush()
  File "build/bdist.linux-i686/egg/sqlalchemy/ext/assignmapper.py", line 16, 
in do
  File "build/bdist.linux-i686/egg/sqlalchemy/orm/session.py", line 234, in 
flush
  File "build/bdist.linux-i686/egg/sqlalchemy/orm/unitofwork.py", line 211, in 
flush
  File "build/bdist.linux-i686/egg/sqlalchemy/orm/session.py", line 49, in 
commit
  File "build/bdist.linux-i686/egg/sqlalchemy/orm/session.py", line 61, in 
close
  File "build/bdist.linux-i686/egg/sqlalchemy/engine/base.py", line 235, in 
close
  File "build/bdist.linux-i686/egg/sqlalchemy/pool.py", line 207, in close
  File "build/bdist.linux-i686/egg/sqlalchemy/pool.py", line 212, in _close
InvalidRequestError: This connection still has 1 open cursors



Cheers,


Seb

-- 
Sébastien LELONG




On Tuesday 19 September 2006 22:35, Michael Bayer wrote:
> hey there -
>
> attached is another patch, which affects the instrumented Cursor and
> Connection objects so that it is impossible to return a connection to
> the pool without all cursors being closed; it throws an error otherwise.
>
> after running all the unit tests with SA, the only time this happens
> is during a rollback(); i added an extra step to rollback to
> explicitly close all open cursors after rolling back to fix that issue.
>
> so when you apply this patch, im hoping that it either fixes the
> problem, or you suddenly get lots of errors saying "This connection
> still has X open cursors", which will pinpoint exactly where cursors
> are staying open when connections are being returned to the pool.
>
> because it will potentially raise a bunch of errors im trying to hold
> off on committing this patch just yet.
>
> give it a try ! also attached to ticket # 306.


-------------------------------------------------------------------------
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
_______________________________________________
Sqlalchemy-users mailing list
Sqlalchemy-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlalchemy-users

Reply via email to