See below stack trace and attached patch. Doesn't fix the underlying issue in TurboGears, but makes the stack trace less confused.

Exception in thread VisitManager:
Traceback (most recent call last):
  File "/usr/lib/python2.4/threading.py", line 442, in __bootstrap
    self.run()
File "/home/ccd/VC/svn/turbogears-1.0/turbogears/visit/api.py", line 256, in run
    self.update_queued_visits(queue)
File "/home/ccd/VC/svn/turbogears-1.0/turbogears/visit/savisit.py", line 55, in update_queued_visits
    values={'expiry': expiry}).execute()
File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/sql.py", line 514, in execute
    return self.execute_using(self.engine, *multiparams, **params)
File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/sql.py", line 461, in <lambda> engine = property(lambda s: s._find_engine(), doc="attempts to locate a Engine within this ClauseElement structure, or returns None if none found.") File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/sql.py", line 1585, in _find_engine
    return self.table.engine
File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/schema.py", line 41, in <lambda>
    engine = property(lambda s:s._get_engine())
File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/schema.py", line 40, in _get_engine
    return self._derived_metadata().engine
File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/schema.py", line 718, in <lambda>
    engine=property(lambda s:s.context._engine)
File "/home/ccd/VC/svn/sqlalchemy/lib/sqlalchemy/util.py", line 189, in __getattr__
    raise AttributeError(key)
AttributeError: _engine
Index: lib/sqlalchemy/schema.py
===================================================================
--- lib/sqlalchemy/schema.py	(revision 1679)
+++ lib/sqlalchemy/schema.py	(working copy)
@@ -715,7 +715,11 @@
         """disposes all Engines to which this DynamicMetaData has been connected."""
         for e in self.__engines.values():
             e.dispose()
-    engine=property(lambda s:s.context._engine)
+    def _get_engine(self):
+        if hasattr(self.context, '_engine'):
+            return self.context._engine
+        return None
+    engine = property(_get_engine)
             
 class SchemaVisitor(sql.ClauseVisitor):
     """defines the visiting for SchemaItem objects"""
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Sqlalchemy-users mailing list
Sqlalchemy-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlalchemy-users

Reply via email to