2.0.43
Released: August 11, 2025
orm
-
[orm] [bug] Fixed issue where using the
post_update
feature would apply incorrect
"pre-fetched" values to the ORM objects after a multi-row UPDATE process
completed. These "pre-fetched" values would come from any column that had
anColumn.onupdate
callable or a version id generator used by
orm.Mapper.version_id_generator
; for a version id generator
that delivered random identifiers like timestamps or UUIDs, this incorrect
data would lead to a DELETE statement against those same rows to fail in
the next step.References: #12748
-
[orm] [bug] Fixed issue where
_orm.mapped_column.use_existing_column
parameter in_orm.mapped_column()
would not work when the
_orm.mapped_column()
is used inside of anAnnotated
type alias in
polymorphic inheritance scenarios. The parameter is now properly recognized
and processed during declarative mapping configuration.References: #12787
-
[orm] [bug] Improved the implementation of the
_orm.selectin_polymorphic()
inheritance loader strategy to properly render the IN expressions using
chunks of 500 records each, in the same manner as that of the
_orm.selectinload()
relationship loader strategy. Previously, the IN
expression would be arbitrarily large, leading to failures on databases
that have limits on the size of IN expressions including Oracle Database.References: #12790
engine
-
[engine] [usecase] Added new parameter
create_engine.skip_autocommit_rollback
which provides for a per-dialect feature of preventing the DBAPI
.rollback()
from being called under any circumstances, if the
connection is detected as being in "autocommit" mode. This improves upon
a critical performance issue identified in MySQL dialects where the network
overhead of the.rollback()
call remains prohibitive even if autocommit
mode is set.References: #12784
postgresql
-
[postgresql] [bug] Fixed regression in PostgreSQL dialect where JSONB subscription syntax
would generate incorrect SQL for JSONB-returning functions, causing syntax
errors. The dialect now properly wraps function calls and expressions in
parentheses when using the[]
subscription syntax, generating
(function_call)[index]
instead offunction_call[index]
to comply
with PostgreSQL syntax requirements.References: #12778
oracle
-
[oracle] [usecase] Extended
_oracle.VECTOR
to support sparse vectors. This update
introduces_oracle.VectorStorageType
to specify sparse or dense
storage and added_oracle.SparseVector
. Pull request courtesy
Suraj Shaw.References: #12711