Fixed issue where use of the :func:`_sql.table` construct, passing a string
for the :paramref:`_sql.table.schema` parameter, would fail to take the
"schema" string into account when producing a cache key, thus leading to
caching collisions if multiple, same-named :func:`_sql.table` constructs
with different schemas were used.
Fixes: #8441
Change-Id: Ic4b55b3e8ec53b4c88ba112691bdf60ea1d4c448
(cherry picked from commit
613642d9639f47ad11ab62a3fa71f6132edbaa0d)
--- /dev/null
+.. change::
+ :tags: bug, sql
+ :tickets: 8441
+
+ Fixed issue where use of the :func:`_sql.table` construct, passing a string
+ for the :paramref:`_sql.table.schema` parameter, would fail to take the
+ "schema" string into account when producing a cache key, thus leading to
+ caching collisions if multiple, same-named :func:`_sql.table` constructs
+ with different schemas were used.
+
InternalTraversal.dp_fromclause_canonical_column_collection,
),
("name", InternalTraversal.dp_string),
+ ("schema", InternalTraversal.dp_string),
]
named_with_column = True
),
lambda: (
table("a", column("x"), column("y")),
+ table("a", column("x"), column("y"), schema="q"),
+ table("a", column("x"), column("y"), schema="y"),
table("a", column("x"), column("y"))._annotate({"orm": True}),
table("b", column("x"), column("y"))._annotate({"orm": True}),
),