possible mapper compilation glitch

Issue #401 resolved
Mike Bayer repo owner created an issue

test out this code on a linux box:

table defs:

g_main (
   gene_id serial primary key,
   .....
);

g_refseq (
   refseq varchar references refseq(refseq),
   gene_id int references g_main(gene_id),
   primary key(refseq, gene_id)
);

refseq (
    refseq varchar primary key
);



from sqlalchemy.ext.sqlsoup import SqlSoup
db = SqlSoup('postgres://...')
genes = db.g_main.select_by(symbol='ADAM12')
len(genes)
refseqs = db.g_refseq.select_by(gene_id=672)
len(refseqs)
join1 = db.join(db.g_main,db.g_refseq)

the possible traceback that I couldnt reproduce on OSX is:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "build/bdist.linux-x86_64/egg/sqlalchemy/ext/sqlsoup.py", line 410, in
join
  File "build/bdist.linux-x86_64/egg/sqlalchemy/ext/sqlsoup.py", line 402, in
map
  File "build/bdist.linux-x86_64/egg/sqlalchemy/ext/sqlsoup.py", line 369, in
class_for_table
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/query.py", line 19, in
__init__
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/mapper.py", line 252, in
compile
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/mapper.py", line 270, in
_compile_all
  File "build/bdist.linux-x86_64/egg/sqlalchemy/orm/mapper.py", line 497, in
_initialize_properties
AttributeError: 'Mapper' object has no attribute '_Mapper__props'

Comments (1)

  1. Mike Bayer reporter

    and I cannot reproduce it. im thinking the user was doing this on a console and ignored some errors perhaps, then got a bad compile. ive committed some synchronization on the mapper compilation in changeset:2188 in case thats related (ive definitely seen at least one user get thread-collisions in compilation).

  2. Log in to comment