Hi all,
The change to proxy.py made on the 11th (revision 943) seems to have
broken the ProxyTableImpl and ProxyColumnImpl objects... I get a
stack overflow as follows:
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
mapping/__init__.py", line 49, in mapper
return Mapper(class_, table, *args, **params)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
mapping/mapper.py", line 175, in __init__
prop.init(key, self)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
mapping/mapper.py", line 770, in init
self.do_init(key, parent)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
mapping/properties.py", line 170, in do_init
self.secondaryjoin = sql.join(self.target, self.secondary).onclause
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
sql.py", line 41, in join
return Join(left, right, onclause, **kwargs)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
sql.py", line 836, in __init__
self.onclause = self._match_primaries(left, right)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
sql.py", line 853, in _match_primaries
if fk.references(primary):
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
schema.py", line 369, in references
return table._get_col_by_original(self.column) is not None
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
sql.py", line 572, in _get_col_by_original
return self.original_columns.get(column.original, None)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/
sql.py", line 1080, in _orig_columns
return self._orig_cols
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/ext/
proxy.py", line 123, in __getattr__
return getattr(self._get_impl(), key)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/ext/
proxy.py", line 115, in _get_impl
e = self.engine
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/ext/
proxy.py", line 123, in __getattr__
return getattr(self._get_impl(), key)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/ext/
proxy.py", line 115, in _get_impl
e = self.engine
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/ext/
proxy.py", line 123, in __getattr__
return getattr(self._get_impl(), key)
File "/site-packages/SQLAlchemy-0.91alpha-py2.4.egg/sqlalchemy/ext/
proxy.py", line 115, in _get_impl
e = self.engine
I think the correct fix is to change the first line of each _get_impl
() method from
e = self.engine
to
e = self._engine.engine
so that it doesn't go back via __getattr__ again.
Doing that fixes it on my system.
Kind regards,
Alastair.
--
http:/www.alastairs-place.net
-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems? Stop! Download the new AJAX search engine that makes
searching your log files as easy as surfing the web. DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
Sqlalchemy-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sqlalchemy-users