]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
reorganize column collection init to be local
authorMike Bayer <mike_mp@zzzcomputing.com>
Sat, 1 Feb 2025 19:39:57 +0000 (14:39 -0500)
committerMike Bayer <mike_mp@zzzcomputing.com>
Wed, 5 Feb 2025 19:05:20 +0000 (14:05 -0500)
commitb6cdcee671509b6bf9a995a18e8d34a2953f4169
tree786bbe3d62688abafa963155b6ac2243912124d6
parent5e623b989e92a60739714486210cae5d8933db99
reorganize column collection init to be local

Reorganized the internals by which the `.c` collection on a
:class:`.FromClause` gets generated so that it is resilient against the
collection being accessed in concurrent fashion.   An example is creating a
:class:`.Alias` or :class:`.Subquery` and accessing it as a module level
variable.  This impacts the Oracle dialect which uses such module-level
global alias objects but is of general use as well.

Fixes: #12302
Change-Id: I30cb07c286affce24e2d85e49f9df5b787438d86
(cherry picked from commit 3cd9a5b42f850618141ec459cffe30d0ade0f191)
doc/build/changelog/unreleased_20/12302.rst [new file with mode: 0644]
lib/sqlalchemy/sql/dml.py
lib/sqlalchemy/sql/elements.py
lib/sqlalchemy/sql/schema.py
lib/sqlalchemy/sql/selectable.py
test/sql/test_selectable.py