|
10 | 10 |
|
11 | 11 | .. changelog:: |
12 | 12 | :version: 2.0.43 |
13 | | - :include_notes_from: unreleased_20 |
| 13 | + :released: August 11, 2025 |
| 14 | + |
| 15 | + .. change:: |
| 16 | + :tags: usecase, oracle |
| 17 | + :tickets: 12711 |
| 18 | + |
| 19 | + Extended :class:`_oracle.VECTOR` to support sparse vectors. This update |
| 20 | + introduces :class:`_oracle.VectorStorageType` to specify sparse or dense |
| 21 | + storage and added :class:`_oracle.SparseVector`. Pull request courtesy |
| 22 | + Suraj Shaw. |
| 23 | + |
| 24 | + .. change:: |
| 25 | + :tags: bug, orm |
| 26 | + :tickets: 12748 |
| 27 | + |
| 28 | + Fixed issue where using the ``post_update`` feature would apply incorrect |
| 29 | + "pre-fetched" values to the ORM objects after a multi-row UPDATE process |
| 30 | + completed. These "pre-fetched" values would come from any column that had |
| 31 | + an :paramref:`.Column.onupdate` callable or a version id generator used by |
| 32 | + :paramref:`.orm.Mapper.version_id_generator`; for a version id generator |
| 33 | + that delivered random identifiers like timestamps or UUIDs, this incorrect |
| 34 | + data would lead to a DELETE statement against those same rows to fail in |
| 35 | + the next step. |
| 36 | + |
| 37 | + |
| 38 | + .. change:: |
| 39 | + :tags: bug, postgresql |
| 40 | + :tickets: 12778 |
| 41 | + |
| 42 | + Fixed regression in PostgreSQL dialect where JSONB subscription syntax |
| 43 | + would generate incorrect SQL for JSONB-returning functions, causing syntax |
| 44 | + errors. The dialect now properly wraps function calls and expressions in |
| 45 | + parentheses when using the ``[]`` subscription syntax, generating |
| 46 | + ``(function_call)[index]`` instead of ``function_call[index]`` to comply |
| 47 | + with PostgreSQL syntax requirements. |
| 48 | + |
| 49 | + .. change:: |
| 50 | + :tags: usecase, engine |
| 51 | + :tickets: 12784 |
| 52 | + |
| 53 | + Added new parameter :paramref:`.create_engine.skip_autocommit_rollback` |
| 54 | + which provides for a per-dialect feature of preventing the DBAPI |
| 55 | + ``.rollback()`` from being called under any circumstances, if the |
| 56 | + connection is detected as being in "autocommit" mode. This improves upon |
| 57 | + a critical performance issue identified in MySQL dialects where the network |
| 58 | + overhead of the ``.rollback()`` call remains prohibitive even if autocommit |
| 59 | + mode is set. |
| 60 | + |
| 61 | + .. seealso:: |
| 62 | + |
| 63 | + :ref:`dbapi_autocommit_skip_rollback` |
| 64 | + |
| 65 | + .. change:: |
| 66 | + :tags: bug, orm |
| 67 | + :tickets: 12787 |
| 68 | + |
| 69 | + Fixed issue where :paramref:`_orm.mapped_column.use_existing_column` |
| 70 | + parameter in :func:`_orm.mapped_column` would not work when the |
| 71 | + :func:`_orm.mapped_column` is used inside of an ``Annotated`` type alias in |
| 72 | + polymorphic inheritance scenarios. The parameter is now properly recognized |
| 73 | + and processed during declarative mapping configuration. |
| 74 | + |
| 75 | + .. change:: |
| 76 | + :tags: bug, orm |
| 77 | + :tickets: 12790 |
| 78 | + |
| 79 | + Improved the implementation of the :func:`_orm.selectin_polymorphic` |
| 80 | + inheritance loader strategy to properly render the IN expressions using |
| 81 | + chunks of 500 records each, in the same manner as that of the |
| 82 | + :func:`_orm.selectinload` relationship loader strategy. Previously, the IN |
| 83 | + expression would be arbitrarily large, leading to failures on databases |
| 84 | + that have limits on the size of IN expressions including Oracle Database. |
14 | 85 |
|
15 | 86 | .. changelog:: |
16 | 87 | :version: 2.0.42 |
|
0 commit comments