diff options
| author | Saad <saad@share.fullhosts.com> | 2019-10-25 00:39:12 +0300 |
|---|---|---|
| committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2019-10-25 08:34:06 +0200 |
| commit | fc2b1cc926e34041953738e58fa6ad3053059b22 (patch) | |
| tree | 246d8603170766fa04740b35f50c8b16268fa41a /docs | |
| parent | 05c3ef26a203de1bc227e31b88999ff2e3b11abf (diff) | |
Fixed #30904 -- Doc'd caveat about using filtered queryset with select_for_update() on MySQL.
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/ref/databases.txt | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/ref/databases.txt b/docs/ref/databases.txt index 1667e911e2..5813fc03e6 100644 --- a/docs/ref/databases.txt +++ b/docs/ref/databases.txt @@ -630,6 +630,11 @@ the ``SELECT ... FOR UPDATE`` statement. If ``select_for_update()`` is used with ``nowait=True``, ``skip_locked=True``, or ``of`` then a :exc:`~django.db.NotSupportedError` is raised. +When using ``select_for_update()`` on MySQL, make sure you filter a queryset +against at least set of fields contained in unique constraints or only against +fields covered by indexes. Otherwise, an exclusive write lock will be acquired +over the full table for the duration of the transaction. + Automatic typecasting can cause unexpected results -------------------------------------------------- |
