#27677: Disable savepoint support for MySQL NDB engine tables, and option to
overwrite the default.
-------------------------------------+-------------------------------------
Reporter: Alan Justino da | Owner: nobody
Silva |
Type: New feature | Status: new
Component: Database layer | Version: master
(models, ORM) |
Severity: Normal | Resolution:
Keywords: | Triage Stage:
| Unreviewed
Has patch: 1 | Needs documentation: 0
Needs tests: 0 | Patch needs improvement: 0
Easy pickings: 1 | UI/UX: 0
-------------------------------------+-------------------------------------
Comment (by Adam Chainz):
I'm unsure to what lengths Django should go to support alternate storage
engines
NDB isn't just a storage engine - you need to use a different version of
MySQL (from Oracle) to use it. Also NDB cluster is just one of many
clustering database options for MySQL, some others being:
* [https://www.percona.com/software/mysql-database/percona-xtradb-cluster
Percona XtraDB Cluster] (XtraDB = InnoDB, should be less different)
* [https://mariadb.com/kb/en/mariadb/what-is-mariadb-galera-cluster/
MariaDB Galera Cluster] (Also uses XtraDB / InnoDB)
I'm afraid I don't have any experience with NDB, or any of the above. I
suspect there will be more issues rather than just the lack of savepoints;
e.g. the docs include a [https://dev.mysql.com/doc/refman/5.7/en/mysql-
cluster-ndb-innodb-engines.html table of differences between the NDB and
InnoDB storage engines] with many entries, and this isn't even where the
lack of savepoints is documented. Some suspicious entries I saw at a
glance: only READ-COMMITTED transaction isolation (pertinent to #27683)
and the difference in data types with 'large row support'.
I'd suggest for the time making and testing a third party database backend
that overrides `uses_savepoints` (etc.), rather than changing Django core
directly right now, since we can't test it, and it doesn't seem that
popular.
--
Ticket URL: <https://code.djangoproject.com/ticket/27677#comment:2>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/065.58769517f6bfe354586d211da29827dc%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.