Hi, I updated sqlalchemy from 0.7.8 to 0.8.2 and one of my queries started failing. I had a CTE expression with capital letters in it's name, and in 0.8 it wasn't getting consistently quoted, but it worked in 0.7.
I narrowed it down, and it only seems to happen in a query containing multiple subqueries referring to the same CTE. Here's an example that reproduces it. If I remove the second subquery from this example, there's no issues: import sys import sqlalchemy as sa import sqlalchemy.orm import psycopg2 engine = sa.create_engine('postgresql://', creator=lambda: psycopg2.connect(dbname=sys.argv[1]), echo=True) Session = sa.orm.scoped_session(sa.orm.sessionmaker(bind=engine)) session = Session() cte = session.query(sa.literal(1).label("id")).cte(name='CTE') firstSubquery = session.query(cte.c.id).subquery() secondSubquery = session.query(cte.c.id).subquery() query = session.query(firstSubquery, secondSubquery) print query.all() The resulting query looks like this. Note that the last reference to "CTE" is not quoted like the others, causing a ProgrammingError when it can't be found. WITH "CTE" AS (SELECT :param_1 AS id) SELECT anon_1.id AS anon_1_id, anon_2.id AS anon_2_id FROM (SELECT "CTE".id AS id FROM "CTE") AS anon_1, (SELECT "CTE".id AS id FROM CTE) AS anon_2 Thanks, Jesse -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at http://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/groups/opt_out.