Added documentation notes about lack of database savepoints support when using MySQL+MyISAM.
Refs #15507, #18116 and r17341, r17921. git-svn-id: http://code.djangoproject.com/svn/django/trunk@17923 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
64bc22be94
commit
83fc965171
|
@ -128,7 +128,7 @@ Version support
|
||||||
Django supports MySQL 5.0.3 and higher.
|
Django supports MySQL 5.0.3 and higher.
|
||||||
|
|
||||||
`MySQL 5.0`_ adds the ``information_schema`` database, which contains detailed
|
`MySQL 5.0`_ adds the ``information_schema`` database, which contains detailed
|
||||||
data on all database schema. Django's ``inspectdb`` feature uses this feature.
|
data on all database schema. Django's ``inspectdb`` feature uses it.
|
||||||
|
|
||||||
.. versionchanged:: 1.5
|
.. versionchanged:: 1.5
|
||||||
The minimum version requirement of MySQL 5.0.3 was set in Django 1.5.
|
The minimum version requirement of MySQL 5.0.3 was set in Django 1.5.
|
||||||
|
@ -141,6 +141,8 @@ MySQL when using the MyISAM storage engine, see the next section.
|
||||||
.. _MySQL: http://www.mysql.com/
|
.. _MySQL: http://www.mysql.com/
|
||||||
.. _MySQL 5.0: http://dev.mysql.com/doc/refman/5.0/en/index.html
|
.. _MySQL 5.0: http://dev.mysql.com/doc/refman/5.0/en/index.html
|
||||||
|
|
||||||
|
.. _mysql-storage-engines:
|
||||||
|
|
||||||
Storage engines
|
Storage engines
|
||||||
---------------
|
---------------
|
||||||
|
|
||||||
|
@ -353,6 +355,21 @@ via the :class:`~django.db.models.Options.db_table` parameter.
|
||||||
|
|
||||||
.. _known issues: http://bugs.mysql.com/bug.php?id=48875
|
.. _known issues: http://bugs.mysql.com/bug.php?id=48875
|
||||||
|
|
||||||
|
Savepoints
|
||||||
|
----------
|
||||||
|
|
||||||
|
Both the Django ORM and MySQL (when using the InnoDB :ref:`storage engine
|
||||||
|
<mysql-storage-engines>`) support database :ref:`savepoints
|
||||||
|
<topics-db-transactions-savepoints>`, but this feature wasn't available in
|
||||||
|
Django until version 1.4 when such supports was added.
|
||||||
|
|
||||||
|
If you use the MyISAM storage engine please be aware of the fact that you will
|
||||||
|
receive database-generated errors if you try to use the :ref:`savepoint-related
|
||||||
|
methods of the transactions API <topics-db-transactions-savepoints>`. The reason
|
||||||
|
for this is that detecting the storage engine of a MySQL database/table is an
|
||||||
|
expensive operation so it was decided it isn't worth to dynamically convert
|
||||||
|
these methods in no-op's based in the results of such detection.
|
||||||
|
|
||||||
Notes on specific fields
|
Notes on specific fields
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
|
|
|
@ -225,9 +225,9 @@ Savepoints
|
||||||
|
|
||||||
A savepoint is a marker within a transaction that enables you to roll back part
|
A savepoint is a marker within a transaction that enables you to roll back part
|
||||||
of a transaction, rather than the full transaction. Savepoints are available
|
of a transaction, rather than the full transaction. Savepoints are available
|
||||||
with the PostgreSQL 8, Oracle and MySQL (version 5.0.3 and newer, when using
|
with the PostgreSQL 8, Oracle and MySQL (when using the InnoDB storage engine)
|
||||||
the InnoDB storage engine) backends. Other backends provide the savepoint
|
backends. Other backends provide the savepoint functions, but they're empty
|
||||||
functions, but they're empty operations -- they don't actually do anything.
|
operations -- they don't actually do anything.
|
||||||
|
|
||||||
.. versionchanged:: 1.4
|
.. versionchanged:: 1.4
|
||||||
Savepoint support for the MySQL backend was added in Django 1.4.
|
Savepoint support for the MySQL backend was added in Django 1.4.
|
||||||
|
|
Loading…
Reference in New Issue