I was testing 0.6beta3 with my code and I ran into a problem when retrieving columns from a joined table. It appears that it occurs when the object inherits from an object which also inherits from another object all using joined table inheritance.

>>> from asset.farm.farmdb import *
>>> session=create_session()
>>> j=session.query(Job).get('testshow/201/s22/t04')
>>> j.scene_file
u'/show/testshow/eps/201/s22/t04/lgt/scn/201_s22_t04_lgt_scn_v004.ma'
>>> ca=session.query(Job).get('testshow/201/s22/t04/lgt/cA')
>>> ca.scene_file
------------------------------------------------------------
Traceback (most recent call last):
  File "<ipython console>", line 1, in <module>
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/attributes.py", line 159, in __get__
    return self.impl.get(instance_state(instance), instance_dict(instance))
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/attributes.py", line 377, in get
    value = callable_(passive=passive)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/state.py", line 268, in __call__
    self.manager.deferred_scalar_loader(self, toload)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/mapper.py", line 1943, in _load_scalar_attributes
    refresh_state=state)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/query.py", line 1675, in _get
    return q.one()
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/query.py", line 1408, in one
    ret = list(self)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/query.py", line 1451, in __iter__
    return self._execute_and_instances(context)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/query.py", line 1456, in _execute_and_instances
    mapper=self._mapper_zero_or_none())
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/orm/session.py", line 737, in execute
    clause, params or {})
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/engine/base.py", line 1086, in execute
    return Connection.executors[c](self, object, multiparams, params)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/engine/base.py", line 1151, in _execute_clauseelement
    return self.__execute_context(context)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/engine/base.py", line 1190, in __execute_context
    r = context.get_result_proxy()._autoclose()
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/dialects/postgresql/psycopg2.py", line 154, in get_result_proxy
    return base.ResultProxy(self)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/engine/base.py", line 1965, in __init__
    self._init_metadata()
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/engine/base.py", line 1972, in _init_metadata
    self._metadata = ResultMetaData(self, metadata)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/engine/base.py", line 1843, in __init__
    result_processor(dialect, coltype)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/dialects/postgresql/base.py", line 219, in result_processor
    item_proc = self.item_type.result_processor(dialect, coltype)
File "/users/dgardner/testsa/lib/python2.6/site-packages/SQLAlchemy-0.6beta3-py2.6.egg/sqlalchemy/dialects/postgresql/psycopg2.py", line 97, in result_processor
    raise exc.InvalidRequestError("Unknown PG numeric type: %d" % coltype)
NameError: global name 'exc' is not defined

>>> j.type
u'take'
>>> ca.type
u'cam'



--
David Gardner
Pipeline Tools Programmer
Jim Henson Creature Shop
dgard...@creatureshop.com


--
You received this message because you are subscribed to the Google Groups 
"sqlalchemy" group.
To post to this group, send email to sqlalch...@googlegroups.com.
To unsubscribe from this group, send email to 
sqlalchemy+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/sqlalchemy?hl=en.

Reply via email to