1
0
mirror of https://github.com/django/django.git synced 2025-10-24 06:06:09 +00:00

Fixed #7732 -- Added support for connection pools on Oracle.

This commit is contained in:
suraj
2024-09-10 20:56:16 +05:30
committed by Sarah Boyce
parent 2249370c86
commit 0d9872fc9a
7 changed files with 215 additions and 9 deletions

View File

@@ -994,7 +994,7 @@ Oracle notes
============
Django supports `Oracle Database Server`_ versions 19c and higher. Version
1.3.2 or higher of the `oracledb`_ Python driver is required.
2.3.0 or higher of the `oracledb`_ Python driver is required.
.. deprecated:: 5.0
@@ -1105,6 +1105,46 @@ Example of a full DSN string::
"(CONNECT_DATA=(SERVICE_NAME=orclpdb1)))"
)
.. _oracle-pool:
Connection pool
---------------
.. versionadded:: 5.2
To use a connection pool with `oracledb`_, set ``"pool"`` to ``True`` in the
:setting:`OPTIONS` part of your database configuration. This uses the driver's
`create_pool()`_ default values::
DATABASES = {
"default": {
"ENGINE": "django.db.backends.oracle",
# ...
"OPTIONS": {
"pool": True,
},
},
}
To pass custom parameters to the driver's `create_pool()`_ function, you can
alternatively set ``"pool"`` to be a dict::
DATABASES = {
"default": {
"ENGINE": "django.db.backends.oracle",
# ...
"OPTIONS": {
"pool": {
"min": 1,
"max": 10,
# ...
}
},
},
}
.. _`create_pool()`: https://python-oracledb.readthedocs.io/en/latest/user_guide/connection_handling.html#connection-pooling
Threaded option
---------------

View File

@@ -197,6 +197,9 @@ Database backends
instead of ``utf8``, which is an alias for the deprecated character set
``utf8mb3``.
* Oracle backends now support :ref:`connection pools <oracle-pool>`, by setting
``"pool"`` in the :setting:`OPTIONS` part of your database configuration.
Decorators
~~~~~~~~~~
@@ -464,6 +467,9 @@ Miscellaneous
* :meth:`.QuerySet.update_or_create`
* :meth:`.QuerySet.aupdate_or_create`
* The minimum supported version of ``oracledb`` is increased from 1.3.2 to
2.3.0.
.. _deprecated-features-5.2:
Features deprecated in 5.2